用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/gootf/software-agent-sop --skill project-context命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
Methodology for designing, building, and validating an AI-agent skill workflow — the design principles behind production workflow graphs (routing/evidence/synthesis/gates/recovery/knowledge loops), a 7-phase build loop with a pass/fail gate on every phase, and the anti-patterns that break workflows. Use when the user wants to build or restore a multi-skill agent workflow ("fill this workflow with skills", "build skills for this graph", "design an agent workflow"), or when asked how to systematically assemble and verify a skill system for a domain.
This skill should be used when the user asks to "create AGENTS.md", "update AGENTS.md", "maintain agent docs", "set up CLAUDE.md", or needs to keep agent instructions concise. Enforces research-backed best practices for minimal, high-signal agent documentation.
Deeply analyze codebase architecture and dependencies. Use when understanding system design, finding patterns, or mapping how components interact.
| name | project-context |
| description | Manage the project rolling context file for team-shared codebase knowledge |
| argument-hint | [subcommand] [arguments] |
Manages the project's rolling context file — team-shared knowledge about the codebase that doesn't fit in ADRs or KB entries. Things like "the legacy auth module is fragile", "CI takes 20 min on the full suite", "prod DB has a 5K connection limit we've hit before."
The file lives at PROJECT-CONTEXT.md in the project root (committed, shared
with the team).
| Invocation | What it does |
|---|---|
/project-context add "<entry>" | Add a new context entry |
/project-context cleanup | Review expired/stale entries |
/project-context (no args) | Display all active entries |
If PROJECT-CONTEXT.md does not exist and the subcommand is not add:
No PROJECT-CONTEXT.md found. Add your first entry with:
/project-context add "<what you've learned about this codebase>"
Stop.
# Project Context
Team-shared knowledge about this codebase. Read by vallorcine agents during
scoping and domain analysis. Entries expire after 90 days by default.
Managed by: `/project-context` — do not edit manually.
---
## Active
### <YYYY-MM-DD> — <one-line summary>
**Expires:** <YYYY-MM-DD>
**Scope:** <"global" | module/area name>
<1-3 sentences of detail.>
---
### <YYYY-MM-DD> — CI takes 20 min on full test suite
**Expires:** 2026-06-16
**Scope:** global
Run focused tests during implementation. Only run full suite in refactor step 2f.
---
## Expired
<!-- Entries moved here by /project-context cleanup. Not read by agents. -->
/project-context add warns and suggests running cleanup:
⚠ Active context has <n> entries (~<n> lines). Consider running:
/project-context cleanup
## Expired section are not counted toward the cap
and are not read by pipeline agentsglobal — always read by agents when they load project context<module/area> — only read when the feature being worked on touches that
area (matched against constructs in work-plan.md or the feature description)Display:
───────────────────────────────────────────────
📝 PROJECT CONTEXT · add
───────────────────────────────────────────────
Parse the entry text. Ask:
── New context entry ──────────────────────────
"<entry>"
Scope: global (or type a module/area name to scope it)
Expires: <date 90 days from now> (or type a date, or: never)
Ask the user to choose (Hermes: use the `clarify` tool) with options:
- "Save"
- "Adjust"
If "Adjust": ask what to change, re-display, confirm again.
### Step 2 — Write
If `PROJECT-CONTEXT.md` doesn't exist, create it with the file header.
Append the new entry to the `## Active` section:
```markdown
### <YYYY-MM-DD> — <one-line summary derived from entry>
**Expires:** <YYYY-MM-DD>
**Scope:** <scope>
<entry text>
---
Display:
✓ Added to PROJECT-CONTEXT.md
Expires: <date>
Scope: <scope>
Display:
───────────────────────────────────────────────
📝 PROJECT CONTEXT · cleanup
───────────────────────────────────────────────
Read PROJECT-CONTEXT.md. Parse all entries in the ## Active section.
For each entry, check:
expiredexpiring-soonactive── Context entries ────────────────────────────
Active: <n>
Expiring soon: <n>
Expired: <n>
If no expired or expiring-soon entries:
All entries are current. Nothing to clean up.
Stop.
For each expired entry:
── Expired: <summary> ─────────────────────────
Added: <date> | Expired: <date> | Scope: <scope>
<entry text>
Type: keep (extend 90d) · archive · delete
Expires: to 90 days from today## Active to ## Expired sectionFor each expiring-soon entry:
── Expiring soon: <summary> ───────────────────
Added: <date> | Expires: <date> (<n> days) | Scope: <scope>
<entry text>
Type: keep (extend 90d) · archive · skip
Same actions as expired, plus skip to leave it alone.
───────────────────────────────────────────────
📝 PROJECT CONTEXT · cleanup complete
Extended: <n> Archived: <n> Deleted: <n> Skipped: <n>
Active entries remaining: <n>
───────────────────────────────────────────────
Display:
───────────────────────────────────────────────
📝 PROJECT CONTEXT
───────────────────────────────────────────────
<n> active entries (<n> global, <n> scoped)
<date> <scope> <summary> <expires>
────── ──────── ────────────────────────────── ─────────
03-16 global CI takes 20 min on full suite 06-16
03-10 jlsm-table 5K connection limit on prod 06-08
03-01 global Legacy auth module is fragile 05-30
<If any expiring within 7 days:>
⚠ <n> entries expiring soon. Run /project-context cleanup to review.
───────────────────────────────────────────────
The add subcommand assumes one entry at a time. When a work phase produces
multiple findings across several upstream artifacts (requirements,
architecture findings, dependency findings, design findings, audit report),
synthesize entries in bulk instead of running add per item — the rolling
file then serves as the single merged view (this is the "synthesize project
context" step of multi-stage workflows).
### YYYY-MM-DD — one-line summary + **Expires:** + **Scope:**), choosing scope
(global vs module/area) by where the fact bites.## Active. Do not run the per-entry Save/Adjust dialog N times.Pipeline agents read PROJECT-CONTEXT.md at these points:
/feature (scoping; optional framework integration point) — Step 1 (read project config). Read the Active section
of PROJECT-CONTEXT.md if it exists. Use global entries and any scoped entries
matching the feature description to inform the scoping interview. Do not ask
questions that active context entries already answer.
/feature-domains (optional framework integration point) — Step 2 (survey). Check active context entries for
known constraints that affect domain classification. An entry like "prod DB
has a 5K connection limit" is relevant when the feature involves database work.
/feature-plan (optional framework integration point) — Step 1 (load context). Read active context entries
scoped to the modules being planned. Constraints from context entries should
be reflected in the work plan contracts.
Pre-flight staleness check: At pipeline start, if PROJECT-CONTEXT.md
exists and has expired entries, display:
ℹ <n> expired project context entries. Run /project-context cleanup to review.
Informational only — never blocks.