Imported from zerostwo/shennong (
inst/codex/project-template/AGENTS.md). Install upstream withnpx skills add zerostwo/shennong --skill project-template. Copyright stays with the author.
{{project_name}} Analysis Governance
This repository is a formal bioinformatics analysis project initialized from the Shennong package template. The agent must treat this repository as a governed analysis project, not as an ad hoc scratch directory.
Operating Priorities
- Preserve reproducibility, traceability, and auditability.
- Keep raw inputs immutable and derived artifacts attributable to a run.
- Prefer formal scripts and recorded runs over notebook-only work.
- Persist durable project knowledge so future sessions can reuse it safely.
- Keep outputs organized so another analyst can re-run and review the work.
Hard Constraints
- The agent must read the required governance files before starting formal work.
- The agent must use the directory conventions defined in
docs/standards/BioinformaticsAnalysisConventions.md. - The agent must record durable project decisions in
memory/Decisions.md. - The agent must record current work state in
memory/Status.md. - The agent must update
memory/Plan.mdwhen scope or sequencing changes. - The agent must update
memory/Prompt.mdwhen the durable operating context changes. - The agent must record durable environment details such as executable paths,
reference locations, and reusable environment names in
config/default.yamland, when they become project assumptions, inmemory/Decisions.md. - The agent must use
skills/for standard operating procedures inside this initialized project. - If Shennong usage tracking is enabled, place its local SQLite database below
ignored
runs/, select development/production/test/benchmark mode explicitly, and never commit or upload the raw SQLite activity log. Enable before caching Shennong function references; the current namespace-binding tracker does not intercept references saved earlier. Remote DBI delivery must retain the local outbox and requires explicit versioned research consent and a sanitized flush.
The Agent Must Always Do
- Read governance in the required order before formal analysis work.
- Keep source data, derived data, runs, and exported results separated.
- Use explicit names, run identifiers, and dated artifacts.
- Promote reusable outputs only through documented promotion rules.
- Capture enough context so a later session can continue without guesswork.
The Agent Must Never Do
- Must not overwrite
data/raw/source files. - Must not place formal outputs in ambiguous locations such as the repository root.
- Must not use ambiguous names such as
final,final2,new, ortest. - Must not treat notebook output as the only record of formal analysis work.
- Must not silently change directory conventions or project rules.
Reading Priority Order
AGENTS.mddocs/standards/BioinformaticsAnalysisConventions.mdmemory/Decisions.mdmemory/Plan.mdmemory/Status.mdmemory/Prompt.md
Pointers
- Standards:
docs/standards/BioinformaticsAnalysisConventions.md - Memory:
memory/ - Project skills:
skills/ - Package usage skills can be installed separately from Shennong with
sn_install_codex_skill(type = "package_skills")when API-level guidance is needed. - An MCP-capable agent can use
sn_get_mcp_server_config()to discover installed methods, exact function help, and workflow guides through Shennong's read-only stdio server. Keep analysis execution in explicit project scripts. - Use
sn_enable_usage_tracking()only for an explicitly requested local timing/usage audit; summarize optimization targets withsn_summarize_usage()and disable the tracker at the end of the session. For managed remote research, usesn_create_usage_store(),sn_confirm_usage_consent(), andsn_flush_usage_tracking(); do not place database credentials in project files or distribute them to desktop users.
Do / Do Not
Do:
- use explicit run IDs
- keep scripts stage-oriented
- persist durable knowledge after using it successfully
Do not:
- hide important paths only in transient chat
- export unchecked intermediates as final results
- invent new conventions without recording them