ソース情報
- リポジトリ
- xoai/sage
- ソースの最終更新活動
- 2026年8月5日 18:24
- 検出された SKILL.md の言語
- 英語
- スター
- 26
- フォーク
- 7
インストール方法
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
ソースファイルを確認
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
メニュー
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
SOC 職業分類に基づく
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
直接コマンドでは確認用 Prompt が省略されます。実行前にソースを確認してください。
npx skills add https://github.com/xoai/sage --skill sage-buildコマンドは1行のまま表示されます。コピー前に横へスクロールして全体を確認してください。
ローカルで確認しますか?SkillsMP が現在取得できるファイルをダウンロードできます。
SKILL.md を表示中
When --quality-locked is active, loop review/revise at each Quality Gate until findings reach a clean bar (no Critical, no Major, only cosmetic Minor) or the iteration cap (10) is reached. Uses a deterministic Python checker for classification and decision logic; agent runs the actual review and revision steps.
Use after implementation passes the quality gates, when a change needs an independent pass over the code before it ships, or when the user asks to "QA this", "check the implementation", or "verify it matches the spec". Applies to Standard and Comprehensive scopes with the Task tool available; Lightweight tasks skip.
Configure Sage preset and project settings. Switch between base, startup, enterprise, or opensource constitution presets. Use when the user says "configure sage", "change preset", or "sage settings".
| name | sage-build |
| description | Brief (medium+ tasks), Spec, Implementation plan |
| version | 1.0.0 |
| author | Sage |
| metadata | {"hermes":{"tags":["Sage","Workflow","build"]}} |
Load this skill when the user runs /sage-build or asks to build something (the Sage build workflow).
Hermes does NOT interpolate an in-body argument token. The user's arguments/flags arrive as a SEPARATE instruction line appended to this skill invocation. Wherever the steps below refer to "the user's arguments", use the text of that appended instruction line.
When a step calls for an independent review, invoke delegate_task against the sage-reviewer skill. Hermes delegate_task has NO toolset-restriction parameter — read-only is prompt-enforced, and you MUST verify afterward that the reviewer made no edits (e.g. git status unchanged) before accepting its verdict.
RULES (apply to every step — non-negotiable):
Feature development guided by Sage.
BEFORE ANYTHING: Scan .sage/work/ for existing artifacts.
This scan is MANDATORY — check the DISK.
Manifest-first path: If .sage/work/*/manifest.md exists, run
python3 sage/runtime/tools/manifest.py resume (plugin installs:
python3 "${CLAUDE_PLUGIN_ROOT}/tools/manifest.py" resume; no python3 →
read the manifest by hand). The brief it prints is the primary context
source: resume at the phase indicated, with the manifest body as judgment
context, not orders — apply the resume authority order
(cycle-protocol.md): live user > recorded decisions > manifest prose,
and evidence over all of it.
Fallback path: If no manifest.md but artifacts exist, use file-scan routing (below). Create manifest.md from inferred state before proceeding (backfill). This preserves backward compatibility with pre-v1.0.9 cycles.
File-scan routing (when no manifest):
You MUST follow this routing. Do not override it based on:
Multiple in-progress: Present list: [1] Continue [initiative A] — [phase] [2] Continue [initiative B] — [phase] [3] Start something new
Branch check (git projects): when resuming, compare the current
branch against the initiative's recorded branch: manifest field
(see git-discipline); if they differ, surface it before proceeding.
Prefer the initiative whose recorded branch matches HEAD.
Read the initiative's decision log for recent context (global
.sage/decisions.md for cross-initiative context). Read the
handoff field in the most recent artifact's frontmatter if present.
Upstream context: Also scan .sage/docs/ for research and
analysis artifacts (jtbd-, ux-audit-, opportunity-, ux-evaluate-).
If found, announce: "Sage: Found research/analysis context — [list].
Using as build input."
Create manifest.md when the first artifact is saved (brief or spec).
Use the template from core/templates/manifest-template.md.
Update manifest.md at EVERY checkpoint:
gate_state, updated timestampgate_state at each checkpoint (machine field — the spec-gate hook reads it):
[A] → gate_state: spec-approved[A] → gate_state: plan-approvedgate_state: buildinggate_state: gates-passedgate_state: completeUntil gate_state reaches spec-approved, the Claude Code hook blocks edits to
source files — that is Rule 3 made mechanical. Advance it the moment the spec is
approved, not "later"; a stale pre-spec keeps blocking the very work you just
approved.
Context budget pressure: If the conversation is very long (many tool calls, approaching context limits), write a manifest update BEFORE suggesting a session break. This is the critical moment — capture the judgment that's about to be lost.
Session end ([N]): Manifest update is MANDATORY. Write handoff guidance and context summary before ending.
Completion: Set status: complete and gate_state: complete at Step 8.
The completion guard blocks this transition unless gate_state was already
gates-passed — so run the quality gates before closing (Rule 5).
Anti-lazy-manifest contract: Context summary MUST NOT be:
Shared cycle protocol: decision-log targeting (Rule 7), gate_state
discipline, phase announcements, and the session-break contract are shared across
the delivery workflows — see core/workflows/_shared/cycle-protocol.md.
At each major phase transition, announce before doing any phase work:
Sage: Entering UNDERSTAND phase [cycle-id] — gathering requirements via quick-elicit.
Sage: Entering PLAN phase [cycle-id] — creating implementation plan from spec.
Sage: Entering DELIVER phase [cycle-id] — implementing with TDD and quality gates.
Sage: Entering REVIEW phase [cycle-id] — running quality verification.
The cycle ID is the directory name under .sage/work/ (e.g., 20260324-auth-flow).
Classify by structural complexity — not time, not gut feeling.
Lightweight: One component, no design decisions, no behavior changes visible to other team members. The change is obvious from the request. → Skip to Step 6, implement directly.
Standard: Multiple components, OR any design decision, OR coordination between modules. Spec file REQUIRED. → spec.md MUST exist at .sage/work/ before implementation. → plan.md MUST exist at .sage/work/ before implementation. → If the task also needs scope definition, write brief first (Step 3).
Comprehensive: New subsystem, cross-cutting changes, or multiple stakeholder impact. → MUST write brief (Step 3) → spec (Step 4) → plan (Step 5) → implement.
Complexity signals (any ONE makes it Standard or above):
Anti-downgrade: When in doubt, classify as Standard, not Lightweight. Do NOT downgrade to Lightweight to avoid writing a spec. If you find yourself thinking "this is simple enough to skip the spec," that thought is the signal to NOT skip the spec.
Present your assessment:
Sage → build workflow. [Scope] — [what makes it this scope]. Starting with [first required step].
If the user explicitly asks to skip a required step, write a minimal 5-line spec anyway (WHAT, WHY, HOW, DONE-WHEN), present [A]/[R], and record the skip rationale in decisions.md.
For Standard or Comprehensive scope in a git repository, create the
initiative branch before any artifact or code work: read and follow
sage/core/capabilities/execution/git-discipline/SKILL.md — propose
feat/<slug>, confirm with the user, create from the default branch,
and record the branch name in the initiative's manifest frontmatter
(branch:). The capability owns dirty-tree, already-on-a-branch,
detached-HEAD, and decline handling. Lightweight scope skips
branching (it produces no multi-commit initiative). Not a git
repository → skip silently.
Parallel-session note (isolation: worktree). If
isolation: in .sage/config.yaml is worktree and this session is
in the main checkout (not a linked worktree), apply the worktree
bounce from git-discipline (offer sage worktree <slug> as a
guided menu) before branching in place. With isolation: branch
(default), ignore this — branch in place as below.
If scope is unclear or the task is Comprehensive, elicit requirements before defining the brief.
If autonomous_mode is active (from flag-parser): skip the
interactive elicitation rounds. Read
sage/core/capabilities/orchestration/autonomous/SKILL.md and follow
its pre-flight + decision protocol. Produce brief.md with a Rationale
block citing memory, codebase patterns, principles, and prior decisions.
If substantive unconfident decisions remain, surface them as a Zone 1
question block. Skip the rest of this step.
Otherwise:
For structured elicitation process, read
sage/core/capabilities/elicitation/quick-elicit/SKILL.md.
It provides 3 focused rounds (~2 minutes):
If quick-elicit cannot be loaded, ask these three questions directly and draft a brief from the answers.
Define: what to build, why, acceptance scenarios, and constraints.
Save to .sage/work/YYYYMMDD-slug/brief.md with frontmatter:
🔒 CHECKPOINT:
Sage: Brief saved to .sage/work/YYYYMMDD-slug/brief.md Decision: [key scope decisions]. (prepend to the initiative's decisions.md)
[A] Approve — continue to spec in this session [R] Revise — tell me what to change [N] New session — type /build to continue with spec
Pick A/R/N, or tell me what to change.
On approval: update brief frontmatter to status: completed.
Prepend decision to decisions.md (Rule 7).
Define: components, data model, APIs, key decisions, edge cases. Resolve open questions from the brief.
If autonomous_mode is active: populate the spec using the
autonomous capability's decision protocol. Include a Rationale block
at the top of spec.md citing context sources. Surface unconfident
substantive decisions as Zone 1 questions before finalizing.
For detailed spec writing process, read
sage/core/capabilities/planning/specify/SKILL.md.
Save to .sage/work/YYYYMMDD-slug/spec.md with frontmatter:
🔒 CHECKPOINT: Sage: Spec saved to .sage/work/YYYYMMDD-slug/spec.md Decision: [key technical decisions]. (prepend to the initiative's decisions.md)
[A] Review — sub-agent reviews spec, then continue to plan [S] Skip review — approve without independent review [R] Revise — tell me what to change [N] New session — type /build to continue with planning
Pick A/S/R/N, or tell me what to change.
On [A] Review:
status: completed.handoff field in frontmatter:handoff: |
Key decisions: [summary of choices made]
Open questions: [what's unresolved]
Risks: [what to watch for during implementation]
Next agent should: [specific guidance for planning phase]
Prepend decision to decisions.md (Rule 7).
Run auto-review BEFORE proceeding to Step 5:
Read sage/core/capabilities/review/auto-review/SKILL.md.
If conditions met (delegate_task available + Standard+ scope +
auto_review ≠ false in config):
Announce: "⚡ Running spec review (sub-agent)..."
Spawn sub-agent with the Spec Review prompt.
Pass the spec path and decisions.md path.
Present findings inline (see capability for format).
Prepend review verdict to decisions.md.
If quality_locked_mode is active (from flag-parser):
Read sage/core/capabilities/orchestration/quality-locked/SKILL.md
and run the review-revise loop instead of presenting findings to user.
Loop until the checker's exit decision (v1: clean bar or cap 10,
logged to manifest; review_loop: v2: the ledger controller —
review.py close-round computes and records every verdict).
If delegate_task NOT available:
Announce: "delegate_task not available — skipping independent review."
THEN proceed to Step 5.
On [S] Skip review:
Break into small, independently testable tasks. Each task: what to do, done criteria, files involved. Use checkboxes as a guide.
If autonomous_mode is active: decompose tasks using the autonomous
capability's decision protocol. Each task's rationale (ordering,
dependencies, scope) cites codebase patterns or prior plans where
relevant. Include a Rationale block at the top of plan.md.
For detailed planning process, read
sage/core/capabilities/planning/plan/SKILL.md.
Save to .sage/work/YYYYMMDD-slug/plan.md with frontmatter:
🔒 CHECKPOINT:
Sage: Plan saved to .sage/work/YYYYMMDD-slug/plan.md
[A] Review — sub-agent reviews plan, then start building [S] Skip review — approve without independent review [R] Revise — tell me what to change [N] New session — type /build to start implementation
Pick A/S/R/N, or tell me what to change.
On [A] Review:
sage/core/capabilities/review/auto-review/SKILL.md.
If conditions met (delegate_task available + Standard+ scope +
auto_review ≠ false in config):
Announce: "⚡ Running plan review (sub-agent)..."