Living Docs Governance
qshanx/docs-governance
把长期项目的文档当成一个小系统来维护,防止文档腐烂——四份各司其职的脊柱文件(CLAUDE.md 共享章程 / CLAUDEMAP.md 地图 / PROJECTSTATUS.md 健康仪表盘 / PROJECTLOG.md 流水账)+ Codex 的 AGENTS.md 入口桥接 + 固定读序,并按需连接 ARCHITECTURE、CONTEXT、ADR、契约、测试、回归和 Issue…
Write or correct this repo's agent documentation — a workspace AGENTS.md (or its CLAUDE.md symlink), a playbook under .agents/docs/playbooks, an architecture doc, or the workspace map.
$ npx skills add DouglasNeuroInformatics/OpenDataCapture --skill odc-agent-docs -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install DouglasNeuroInformatics/OpenDataCapture odc-agent-docs --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/DouglasNeuroInformatics/OpenDataCapture.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/odc-agent-docs .claude/skills/odc-agent-docs && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "odc-agent-docs" agent skill from https://github.com/DouglasNeuroInformatics/OpenDataCapture/tree/main/.agents/skills/odc-agent-docs into .claude/skills/odc-agent-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "odc-agent-docs", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/DouglasNeuroInformatics/OpenDataCapture/tree/main/.agents/skills/odc-agent-docsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add DouglasNeuroInformatics/OpenDataCapture --skill odc-agent-docs -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install DouglasNeuroInformatics/OpenDataCapture odc-agent-docs --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/DouglasNeuroInformatics/OpenDataCapture.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/odc-agent-docs .agents/skills/odc-agent-docs && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "odc-agent-docs" agent skill from https://github.com/DouglasNeuroInformatics/OpenDataCapture/tree/main/.agents/skills/odc-agent-docs into .agents/skills/odc-agent-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "odc-agent-docs", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add DouglasNeuroInformatics/OpenDataCapture --skill odc-agent-docs -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install DouglasNeuroInformatics/OpenDataCapture odc-agent-docs --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/DouglasNeuroInformatics/OpenDataCapture.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/odc-agent-docs .cursor/skills/odc-agent-docs && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "odc-agent-docs" agent skill from https://github.com/DouglasNeuroInformatics/OpenDataCapture/tree/main/.agents/skills/odc-agent-docs into .cursor/skills/odc-agent-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "odc-agent-docs", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/DouglasNeuroInformatics/OpenDataCapture.git --path .agents/skills/odc-agent-docs--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add DouglasNeuroInformatics/OpenDataCapture --skill odc-agent-docs -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install DouglasNeuroInformatics/OpenDataCapture odc-agent-docs --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/DouglasNeuroInformatics/OpenDataCapture.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/odc-agent-docs .gemini/skills/odc-agent-docs && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "odc-agent-docs" agent skill from https://github.com/DouglasNeuroInformatics/OpenDataCapture/tree/main/.agents/skills/odc-agent-docs into .gemini/skills/odc-agent-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "odc-agent-docs", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install DouglasNeuroInformatics/OpenDataCapture odc-agent-docsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add DouglasNeuroInformatics/OpenDataCapture --skill odc-agent-docs -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/DouglasNeuroInformatics/OpenDataCapture.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/odc-agent-docs .github/skills/odc-agent-docs && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "odc-agent-docs" agent skill from https://github.com/DouglasNeuroInformatics/OpenDataCapture/tree/main/.agents/skills/odc-agent-docs into .github/skills/odc-agent-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "odc-agent-docs", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add DouglasNeuroInformatics/OpenDataCapture --skill odc-agent-docs -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install DouglasNeuroInformatics/OpenDataCapture odc-agent-docs --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/DouglasNeuroInformatics/OpenDataCapture.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/odc-agent-docs .opencode/skills/odc-agent-docs && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "odc-agent-docs" agent skill from https://github.com/DouglasNeuroInformatics/OpenDataCapture/tree/main/.agents/skills/odc-agent-docs into .opencode/skills/odc-agent-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "odc-agent-docs", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
odc-agent-docsWrite or correct this repo's agent documentation — a workspace AGENTS.md (or its CLAUDE.md symlink), a playbook under .agents/docs/playbooks, an architecture doc, or the workspace map.
Odc Agent Docs is an agent skill from DouglasNeuroInformatics/OpenDataCapture. Write or correct this repo's agent documentation — a workspace AGENTS.md (or its CLAUDE.md symlink), a playbook under .agents/docs/playbooks, an architecture doc, or the workspace map. Use when a documented rule is wrong or missing, when a change contradicts an AGENTS.md, or when another skill needs the house format for these files. Architectural decisions land in .agents/docs/architecture (no ADR flow here); investigating the outside world is research's job.
Its SKILL.md is about 2.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `agents/openai.yaml`).
It sits in Agent Workflows, covering Agent instruction files and Architecture decision records. The repository describes itself as: An electronic data capture platform for administering remote and in-person clinical instruments. The licence is Apache-2.0.
Read from SKILL.md and the folder at commit 432dec8. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
pnpmvitestFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use pnpm, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Odc Agent Docs loads about 2.7k tokens when it runs. Until then it costs about 120 tokens; SKILL.md has 1,189 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from DouglasNeuroInformatics/OpenDataCapture at commit 432dec8, republished under its Apache-2.0 licence (© DouglasNeuroInformatics). 1,189 words, ~2,699 tokens.
.claude/skills/odc-agent-docs/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.No tool will tell you a fact landed in the wrong file — .agents/ is neither shipped nor linted
(.agents/docs/workspace-map.md). A true sentence in the wrong document is silently correct, and the
second copy is the one that goes stale: correct one, miss the other, and the repo now says two things.
Every fact has one home. Find it before you write it.
Grep for the fact, not for the file — a distinctive token from it, across docs and code:
grep -rn "accessibleQuery(undefined" --exclude-dir=node_modules .| Hits | What it means | What you do |
|---|---|---|
| none | the fact is new | place it by the table below |
| one | that file is the home | point at it by path — a second statement is the failure, not the service |
| two or more | you have found a duplication | pick the home, cut the others to a one-line pointer, land it in the same change |
Collapsing them is part of the change that found them, not a follow-up.
| The fact is | Home |
|---|---|
| a rule that binds every directory | root AGENTS.md |
| a convention or invariant of one workspace | that workspace's AGENTS.md |
| an ordered procedure where a skipped step fails silently | .agents/docs/playbooks/<verb>-<rest>.md — verb first, kebab-case |
| structure spanning workspaces — a pipeline, a permission model | .agents/docs/architecture/<topic>.md |
| what a workspace is, what it builds, who depends on it | .agents/docs/workspace-map.md |
the API or local status of a consumed @douglasneuroinformatics/* | .agents/docs/packages/<name>.md |
| agent behaviour with a trigger of its own | a skill — .agents/skills/writing-great-skills/SKILL.md decides its shape |
A playbook ends in a ## Verify block. If you cannot write the commands that show the work
landed, what you have is reference, and it belongs in an AGENTS.md or an architecture doc. The
corollary: a playbook carries the order of operations and points outward for every rule.
add-web-route.md is the template; read it before writing a new one.
apps/web/AGENTS.md; read it
first. This file is only the ordering that matters." Line 3 says what the file is not.add-instrument.md names step 6 in its second
sentence.logs.tsx,
vendor/react@19.x, apps/api/src/groups/. add-vendor-package.md writes it as "Copy an existing
wrapper rather than starting empty".## Verify: a fenced sh block of real commands, plus a line on what a given failure
means — add-web-route.md says a TS2345 there means only that the route tree is not regenerated
yet.The list heading is the one unfixed part: ## Steps, ## Checklist and going straight into the
numbered list are all in use — match the playbook nearest your topic. ## Traps before ## Verify
is optional and holds what no step owns (add-blog-post.md).
# apps/web, # packages/licenses.apps/api and
packages/runtime-core do.## Traps or a heading that states the trap as a
sentence (## Nothing in this directory is checked by anything, vendor/AGENTS.md).apps/api/AGENTS.md
names src/groups/__tests__/groups.service.test.ts.## Tests giving pnpm exec vitest --project <name>, or
stating there is no project and what covers the behaviour instead (packages/react-core/AGENTS.md).
Where vitest is not the answer the section keeps another name (docs/AGENTS.md,
## Checking your work); apps/api closes on ## Build after it and cli/AGENTS.md has none.AGENTS.md already loads every turn — point outward only where
the reader must leave, to the playbook for the procedure or the architecture doc for the model.A new AGENTS.md needs a sibling CLAUDE.md symlink — ln -s AGENTS.md CLAUDE.md, committed
(git mode 120000, one-line blob AGENTS.md). Every CLAUDE.md here is that symlink: never author
or edit one, edit the AGENTS.md. Every tracked AGENTS.md has the symlink except those that are
not this repo's conventions — the published packages/instrument-guidelines/AGENTS.md (root
AGENTS.md explains why) and .agents/skills/vercel-react-best-practices/AGENTS.md, vendored.
storybook/AGENTS.md) does work that "be careful where you put stories" cannot.runtime-and-vendor.md states one set of
files as two different counts, prose against its own table. State a count only beside the command
that reproduces it (workspace-map.md, pnpm ls -r --depth -1).Each row is one commit's worth of work.
| You changed | These move with it |
|---|---|
| a workspace added, renamed or moved | workspace-map.md (its section table, Built vs source-only, Published to npm), root AGENTS.md "Where to look", the new AGENTS.md and its CLAUDE.md symlink |
| a vitest project added or removed | testing-strategy.md Vitest projects table, the count opening it and its "everything else has no unit tests" list; workspace-map.md's Vitest project column; that workspace's ## Tests section |
| a new playbook | root AGENTS.md "Step-by-step playbooks" row |
| a new architecture doc | root AGENTS.md "Deeper reference, read on demand" row |
a new .agents/docs/packages/<name>.md | .agents/docs/packages/index.md (its section table's Docs link, the fidelity table) and the root AGENTS.md "Internal DNP packages" list |
| a new skill | its .claude/skills/<name> symlink and agents/openai.yaml sidecar — below — and the skill index in .agents/skills/odc-orientation/SKILL.md |
A skill nothing symlinks is a skill nothing loads. ln -s ../../.agents/skills/<name> .claude/skills/<name>,
committed at git mode 120000, is what puts a skill in front of an agent; without it the SKILL.md
is never read and nothing reports it. The sidecar is two keys — interface.display_name and
interface.short_description; copy .agents/skills/review-pr/agents/openai.yaml.
There is nothing to make pass — the pre-commit hook formats rather than verifies
(.agents/docs/playbooks/run-locally.md). No proseWrap is configured, so your line breaks survive:
match the wrap of the file you are editing. .agents/skills is formatted; .claude/skills is in
.prettierignore because its entries are symlinks, which are not formattable.
ls each one.## Verify; an AGENTS.md with its
path title, trap before conventions, and closing check — or your reply names the bullet you skipped.AGENTS.md your change contradicts is revised in the same commit, never left
disagreeing (root AGENTS.md, "Before you are done").© DouglasNeuroInformatics, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file in .agents/skills/odc-agent-docs of DouglasNeuroInformatics/OpenDataCapture.
Open the folder on GitHubat commit 432dec8
Odc Agent Docs next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Odc Agent Docs this skillDouglasNeuroInformatics/OpenDataCapture | 119 | — | ~2.7k | Automated safety check: Pass | Apache-2.0 | |
| Living Docs Governanceqshanx/docs-governance | 132 | — | ~4.1k | Automated safety check: Pass | MIT | |
| Ad Driftalexandremendoncaalvaro/CorridorKey-Runtime | 755 | 1 repos | ~1.6k | Automated safety check: Pass | Custom licence | |
| Authoring Claude Mdsammcj/agentic-coding | 162 | — | ~2.6k | Automated safety check: Pass | Apache-2.0 | |
| Rememberantonio-orionus/Arroxy | 389 | — | ~571 | Automated safety check: Pass | MIT | |
| Ad DriftCorridorTech/PoseCap | 224 | — | ~1.8k | Automated safety check: Notes | Apache-2.0 |
qshanx/docs-governance
把长期项目的文档当成一个小系统来维护,防止文档腐烂——四份各司其职的脊柱文件(CLAUDE.md 共享章程 / CLAUDEMAP.md 地图 / PROJECTSTATUS.md 健康仪表盘 / PROJECTLOG.md 流水账)+ Codex 的 AGENTS.md 入口桥接 + 固定读序,并按需连接 ARCHITECTURE、CONTEXT、ADR、契约、测试、回归和 Issue…
alexandremendoncaalvaro/CorridorKey-Runtime
Read-only drift audit — compare AGENTS.md, ARCHITECTURE.md, and ADR statuses against what the code actually does.
sammcj/agentic-coding
Creating and maintaining CLAUDE.md project memory files and .claude/rules/ rule files that provide non-obvious codebase context.
antonio-orionus/Arroxy
Persists a durable Arroxy lesson — a gotcha, user preference, workflow rule, or design decision — to the right tracked file (project memory, AGENTS.md, CONTEXT.md, dev-docs, or an ADR) so any coding…
CorridorTech/PoseCap
Read-only drift audit — compare AGENTS.md, ARCHITECTURE.md, ADR statuses, feature specs in doc/specs/, and documentation discipline against what the code actually does.
extra-org/extra
Keep the repository's documentation accurate, honest, and synchronized with the code.
DouglasNeuroInformatics/OpenDataCapture
Test a change in Open Data Capture. An agent skill from DouglasNeuroInformatics/OpenDataCapture.
DouglasNeuroInformatics/OpenDataCapture
Triage pull requests against upstream main — one verdict, action items, and whether it needs the user's eyes.
DouglasNeuroInformatics/OpenDataCapture
Open a pull request against main for the current branch. An agent skill from DouglasNeuroInformatics/OpenDataCapture.
DouglasNeuroInformatics/OpenDataCapture
File a GitHub issue for Open Data Capture with its labels. An agent skill from DouglasNeuroInformatics/OpenDataCapture.
DouglasNeuroInformatics/OpenDataCapture
What actually breaks in Open Data Capture — a failing build, lint, unit test or e2e run; a change with no visible effect; a suite that stays green after you broke the code on purpose; an error…
DouglasNeuroInformatics/OpenDataCapture
Close out a change to Open Data Capture before committing, opening a PR, or reporting it done.
Categories
Write or correct this repo's agent documentation — a workspace AGENTS.md (or its CLAUDE.md symlink), a playbook under .agents/docs/playbooks, an architecture doc, or the workspace map. Odc Agent Docs is an agent skill from DouglasNeuroInformatics/OpenDataCapture.agents/docs/playbooks, an architecture doc, or the workspace map.
Odc Agent Docs fits situations like: A documented rule is wrong; A change contradicts an AGENTS.md; another skill needs the house format for these files.
Run `npx skills add DouglasNeuroInformatics/OpenDataCapture --skill odc-agent-docs -a claude-code`. Or copy the skill folder (.agents/skills/odc-agent-docs in DouglasNeuroInformatics/OpenDataCapture) into .claude/skills/odc-agent-docs in your project. Claude Code loads it when a task matches its description.
Run `npx skills add DouglasNeuroInformatics/OpenDataCapture --skill odc-agent-docs -a codex`. Or copy the skill folder (.agents/skills/odc-agent-docs in DouglasNeuroInformatics/OpenDataCapture) into .agents/skills/odc-agent-docs in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add DouglasNeuroInformatics/OpenDataCapture --skill odc-agent-docs -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/odc-agent-docs, .gemini/skills/odc-agent-docs, .github/skills/odc-agent-docs and .opencode/skills/odc-agent-docs in your project.
Going by SKILL.md and its folder, Odc Agent Docs needs the command-line tools its instructions call (pnpm and vitest).
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Odc Agent Docs is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.7k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Odc Agent Docs: Living Docs Governance (qshanx/docs-governance, 132 stars), Ad Drift (alexandremendoncaalvaro/CorridorKey-Runtime, 755 stars), Authoring Claude Md (sammcj/agentic-coding, 162 stars) and Remember (antonio-orionus/Arroxy, 389 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
DouglasNeuroInformatics (a GitHub organization) maintains it in DouglasNeuroInformatics/OpenDataCapture, which has 119 GitHub stars. The repository holds 16 skills in this directory. The repository was last updated on October 7, 2026.
Source: DouglasNeuroInformatics/OpenDataCapture on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.