agentleFS
fakechrisfakechris/obsidian_vault_pipeline/AGENTS.md

obsidian_vault_pipeline

AGENTS.md165 starsChanged 4 months agoApache-2.0View on GitHub

This branch is the Rust OVP Next trunk. The repository root is the Rust workspace root. Expected root layout: There should be no nested rust/ovp2/ project and no root src/ovp_pipeline/, pyproject.toml, requirements.txt, or MANIFEST.in. Run from the repository root: Use rg for searches. Prefer git mv and git rm for structural edits so migrations remain auditable. Derived state must stay rebuildable from Rust code and committed fixtures/contracts. Historical legacy alignment docs can be used as behavioral context, not as runtime…

  • Reads credentials
  • Where files are headingNew AGENTS.md files have more rules about keeping secrets out of the code, and fewer about code style.

    Of the AGENTS.md files we read, the 31,542 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.

  • In this repository10 other files it gives its agents.

The file

We split this AGENTS.md into the rules it gives an agent

12 rules. About 1 is common, 4 are distinctive, and 7 are very specific to this project.

  • ≈1

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈4

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 7

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  • could be automatic: a setting could enforce it
  1. Distinctive:

    Do not infer current architecture from Python-era files, old vault templates, or legacy product docs.

    line 10
  2. Distinctive:

    Do not reintroduce a Python pipeline, Python package metadata, or Python CLI wrappers unless the user explicitly requests a migration …

    line 11
  3. Distinctive:

    Run from the repository root:

    line 34
  4. Very specific:

    Use rg for searches. Prefer git mv and git rm for structural edits so migrations remain auditable.

    line 43
  5. Common:

    Do not commit local scratch, live outputs, credentials, or raw evaluation data:

    line 58
  6. Distinctive:

    When modifying LLM prompt templates or pipeline behavior:

    line 72
  7. Very specific:

    Write a Candidate Spec (evolution/candidates/<id>.json) BEFORE editing

    line 74
  8. Very specific:

    Run ovp2 evolve validate --candidate <spec> to confirm spec validity

    line 77
  9. Very specific:

    Run ovp2 evolve ab --candidate <spec> to generate paired comparison (Phase 2+)

    line 78
  10. Very specific:

    Search Before Propose: Always run work_search to prevent duplicate nodes.

    line 118
  11. Very specific:

    Claim-Driven Execution: Run work_claim to lease a task before writing code.

    line 120
  12. Very specific:

    When a research conclusion rests on an OVP source, the Involute item cites ovp://source/<sha256> — the URI our own tools emit, so every …

    line 140

≈ “Common” is an estimate: at least 1 in 5 of the 40,246 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
AGENTS.md

AGENTS.md - OVP Next Rust Trunk

This branch is the Rust OVP Next trunk. The repository root is the Rust workspace root.

Source Of Truth

  • Build and architecture decisions must start from the Rust crates under crates/.
  • Cargo.toml, Cargo.lock, crates/, fixtures/, manifests/, scripts/, and Rust-focused docs/ are the current implementation surface.
  • The legacy Python implementation has been removed from this branch's tracked working tree.
  • Do not infer current architecture from Python-era files, old vault templates, or legacy product docs.
  • Do not reintroduce a Python pipeline, Python package metadata, or Python CLI wrappers unless the user explicitly requests a migration helper script.

Repository Shape

Expected root layout:

Cargo.toml
Cargo.lock
crates/
docs/
fixtures/
manifests/
scripts/
README.md
.gitignore
AGENTS.md

There should be no nested rust/ovp2/ project and no root src/ovp_pipeline/, pyproject.toml, requirements.txt, or MANIFEST.in.

Development Commands

Run from the repository root:

cargo metadata --no-deps --format-version 1
cargo test --workspace
cargo clippy --workspace --all-targets -- -D warnings
bash scripts/check_architecture.sh

Use rg for searches. Prefer git mv and git rm for structural edits so migrations remain auditable.

Architecture Boundaries

  • ovp-core owns the sync kernel primitives.
  • ovp-domain owns domain types, transforms, prompts, fixtures, and contract parsing.
  • ovp-app owns manifest-based graph assembly.
  • ovp-run owns the operational run cycle.
  • ovp-query, ovp-lint, ovp-rag, ovp-auto, ovp-eval, and ovp-review are read, health, automation, comparison, and review layers around the run cycle.
  • ovp-cli is a thin argument-parsing layer that delegates into the crates above.

Derived state must stay rebuildable from Rust code and committed fixtures/contracts. Historical legacy alignment docs can be used as behavioral context, not as runtime authority.

Data Hygiene

Do not commit local scratch, live outputs, credentials, or raw evaluation data:

  • .run/
  • .env*
  • local tool state such as .agents/, .gstack/, .supervisor/, .worktrees/
  • untracked docs/eval/, docs/superpowers/, or legacy report scratch
  • raw/live cassette captures unless the user explicitly asks to curate and commit them

Committed replay cassettes under crate tests are acceptable only when they are intentional frozen fixtures.

NEVER write intermediate or run artifacts (live-run outputs, cassettes, stores, work dirs) to /tmp — it is wiped on reboot and the evidence is lost. Put them under the gitignored .run/<milestone>/ in this repo (or the vault's .ovp/ when they belong to the operator vault) so they survive and stay auditable.

OVP Evolution Rules

When modifying LLM prompt templates or pipeline behavior:

  1. Write a Candidate Spec (evolution/candidates/<id>.json) BEFORE editing
  2. Identify the target Change Surface: prompt | parser | runtime | gate | model
  3. State a falsifiable hypothesis with predicted metric delta
  4. Run ovp2 evolve validate --candidate <spec> to confirm spec validity
  5. Run ovp2 evolve ab --candidate <spec> to generate paired comparison (Phase 2+)
  6. Accept only if hard gates pass and guardrails hold
  7. Record in Evolution Ledger with git SHA and rollback plan
  8. Bump the prompt namespace version constant after acceptance

Rules:

  • One surface per candidate (no mixing prompt + parser changes)
  • Hard gate: accepted_without_quote must remain 0
  • Cassette replay is the source of truth for regression
  • Prompt versions are monotonically increasing; never reuse a version number
  • The ovp-evolve crate owns all evolution governance logic
  • evolution/components.json is the component registry (validated at load time)
  • .ovp/evolution-ledger.jsonl is the append-only decision record

Involute Work-Graph Protocol

This repository is bound to the Involute Work-Graph Kernel for task tracking, milestone delivery, and auditable agent collaboration.

1. Project Binding

2. MCP Connection Configuration

Agent EnvironmentMCP Endpoint URLNotes
Remote / Developer Machine (Mac, Cursor, Codex, Claude Code)https://involute.lumenopen.com/mcp (or /mcp/readonly)Production HTTPS entry on oracle_5
Local on Box (executing inside VPS host)http://127.0.0.1:4200/mcp (or /mcp/readonly)Only where the container port is mapped to host loopback
  • Auth Header: Authorization: Bearer <AGENT_TOKEN> (inv_agent_... minted via Settings → Agents).
  • Security Rule: Tokens stay in agent secret store; NEVER commit tokens or write them to repository files.

3. Agent Operational Rules

  1. Search Before Propose: Always run work_search to prevent duplicate nodes.
  2. Propose, Never Unilaterally Commit: Agents propose candidates via work_propose; humans commit via Web UI or CLI.
  3. Claim-Driven Execution: Run work_claim to lease a task before writing code.
  4. Report Runs with Evidence: Record progress via run_report. On completion, attach durable evidence (commit SHA, test exit code, PR URL) via evidence_attach.
  5. In Review, Never Done: Agents transition tasks to In Review. Moving work to Done is strictly reserved for human review or verified CLEAR auto-accept gate.

Cross-system references (INV-1434)

OVP turns outside information into knowledge. Our own conclusions and decisions live in Involute; agent session evidence lives in planofplan (decision INV-1433). Point between them with text references — OVP never calls the other systems at runtime, and only clients (an agent, or recall) resolve references, one hop at a time.

PrefixOwnerResolve with
ovp://source/<sha256> · ovp://claim/<claim_key>OVP (this repo's MCP)resources/read with the URI as is, or ovp_read_note / claim
ovp://theme-page/<id>OVP (this repo's MCP)resources/read with the URI as is, or theme_page
inv:INV-<n>Involute (remote)work_get_context
pop:<session_id>#<message_id>@<revision> (planofplan's ids as is, e.g. pop:claude:agent-…)planofplan (local)read_session with the session_id unchanged for the full SourceRef, then read_message

When a research conclusion rests on an OVP source, the Involute item cites ovp://source/<sha256> — the URI our own tools emit, so every tool that emits an ovp:// URI must keep resolving it. Cite a claim by claim_key (ck-…), a reader pack by its reader.md path. Do not write the conclusion into the vault. Full format and rules: Involute docs/cross-system-refs.md.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.