mirror of https://github.com/garrytan/gstack.git
Merge 603aa07474 into 2be6c06ba8
This commit is contained in:
commit
1e481c04e8
31
cso/SKILL.md
31
cso/SKILL.md
|
|
@ -796,7 +796,17 @@ the failure occurred (if outcome is error, otherwise use empty string "").
|
|||
|
||||
Skills that run plan reviews (`/plan-*-review`, `/codex review`) include the EXIT PLAN MODE GATE blocking checklist at the end of the skill, which verifies the plan file ends with `## GSTACK REVIEW REPORT` before ExitPlanMode is called. Skills that don't run plan reviews (operational skills like `/ship`, `/qa`, `/review`) typically don't operate in plan mode and have no review report to verify; this footer is a no-op for them. Writing the plan file is the one edit allowed in plan mode.
|
||||
|
||||
## Brain Context Load
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
Extract 2-4 keywords from the user's request. Search the brain:
|
||||
`gbrain search "<keywords>"`. Read the top 3 results with
|
||||
`gbrain get_page "<slug>"`. Use that context to inform your analysis.
|
||||
|
||||
If `gbrain search` returns no results or any non-zero exit, proceed
|
||||
without brain context. Full search/read protocol + examples:
|
||||
see `docs/gbrain-write-surfaces.md` §Context Load.
|
||||
|
||||
# /cso — Chief Security Officer Audit (v2)
|
||||
|
||||
|
|
@ -1269,7 +1279,28 @@ staleness detection: if those files are later deleted, the learning can be flagg
|
|||
**Only log genuine discoveries.** Don't log obvious things. Don't log things the user
|
||||
already knows. A good test: would this insight save time in a future session? If yes, log it.
|
||||
|
||||
## Save Results to Brain
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
After completing this skill, save the output:
|
||||
|
||||
```bash
|
||||
gbrain put "security-audits/<feature-slug>" --content "$(cat <<'EOF'
|
||||
---
|
||||
title: "Security Audit: <feature name>"
|
||||
tags: [security-audit, <feature-slug>]
|
||||
---
|
||||
<skill output in markdown>
|
||||
EOF
|
||||
)"
|
||||
```
|
||||
|
||||
Then extract person/org entities and create stub pages for each one.
|
||||
Throttle errors (exit 1 with "throttle"/"rate limit"/"busy") and any
|
||||
other non-zero exit are transient — don't retry inline. Full entity-stub
|
||||
template, throttle handling, and backlink protocol:
|
||||
see `docs/gbrain-write-surfaces.md` §Save Template.
|
||||
|
||||
## Important Rules
|
||||
|
||||
|
|
|
|||
|
|
@ -965,7 +965,17 @@ If `DESIGN_NOT_AVAILABLE`: Phase 5 falls back to the HTML preview page (still go
|
|||
|
||||
---
|
||||
|
||||
## Brain Context Load
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
Extract 2-4 keywords from the user's request. Search the brain:
|
||||
`gbrain search "<keywords>"`. Read the top 3 results with
|
||||
`gbrain get_page "<slug>"`. Use that context to inform your analysis.
|
||||
|
||||
If `gbrain search` returns no results or any non-zero exit, proceed
|
||||
without brain context. Full search/read protocol + examples:
|
||||
see `docs/gbrain-write-surfaces.md` §Context Load.
|
||||
|
||||
## Prior Learnings
|
||||
|
||||
|
|
@ -1228,7 +1238,28 @@ staleness detection: if those files are later deleted, the learning can be flagg
|
|||
**Only log genuine discoveries.** Don't log obvious things. Don't log things the user
|
||||
already knows. A good test: would this insight save time in a future session? If yes, log it.
|
||||
|
||||
## Save Results to Brain
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
After completing this skill, save the output:
|
||||
|
||||
```bash
|
||||
gbrain put "design-systems/<feature-slug>" --content "$(cat <<'EOF'
|
||||
---
|
||||
title: "Design System: <feature name>"
|
||||
tags: [design-system, <feature-slug>]
|
||||
---
|
||||
<skill output in markdown>
|
||||
EOF
|
||||
)"
|
||||
```
|
||||
|
||||
Then extract person/org entities and create stub pages for each one.
|
||||
Throttle errors (exit 1 with "throttle"/"rate limit"/"busy") and any
|
||||
other non-zero exit are transient — don't retry inline. Full entity-stub
|
||||
template, throttle handling, and backlink protocol:
|
||||
see `docs/gbrain-write-surfaces.md` §Save Template.
|
||||
|
||||
## Important Rules
|
||||
|
||||
|
|
|
|||
|
|
@ -812,7 +812,17 @@ the failure occurred (if outcome is error, otherwise use empty string "").
|
|||
|
||||
Skills that run plan reviews (`/plan-*-review`, `/codex review`) include the EXIT PLAN MODE GATE blocking checklist at the end of the skill, which verifies the plan file ends with `## GSTACK REVIEW REPORT` before ExitPlanMode is called. Skills that don't run plan reviews (operational skills like `/ship`, `/qa`, `/review`) typically don't operate in plan mode and have no review report to verify; this footer is a no-op for them. Writing the plan file is the one edit allowed in plan mode.
|
||||
|
||||
## Brain Context Load
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
Extract 2-4 keywords from the user's request. Search the brain:
|
||||
`gbrain search "<keywords>"`. Read the top 3 results with
|
||||
`gbrain get_page "<slug>"`. Use that context to inform your analysis.
|
||||
|
||||
If `gbrain search` returns no results or any non-zero exit, proceed
|
||||
without brain context. Full search/read protocol + examples:
|
||||
see `docs/gbrain-write-surfaces.md` §Context Load.
|
||||
|
||||
# /design-review: Design Audit → Fix → Verify
|
||||
|
||||
|
|
@ -2024,7 +2034,14 @@ staleness detection: if those files are later deleted, the learning can be flagg
|
|||
**Only log genuine discoveries.** Don't log obvious things. Don't log things the user
|
||||
already knows. A good test: would this insight save time in a future session? If yes, log it.
|
||||
|
||||
## Save Results to Brain
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
If the skill output is worth preserving, save it via
|
||||
`gbrain put "<slug>" --content "<frontmatter + markdown>"`. Full template
|
||||
(heredoc body, frontmatter shape, entity-stub instructions, throttle
|
||||
handling): see `docs/gbrain-write-surfaces.md` §Save Template.
|
||||
|
||||
## Additional Rules (design-review specific)
|
||||
|
||||
|
|
|
|||
|
|
@ -841,7 +841,19 @@ Fixing symptoms creates whack-a-mole debugging. Every fix that doesn't address r
|
|||
|
||||
---
|
||||
|
||||
## Brain Context Load
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
Extract 2-4 keywords from the user's request. Search the brain:
|
||||
`gbrain search "<keywords>"`. Read the top 3 results with
|
||||
`gbrain get_page "<slug>"`. Use that context to inform your analysis.
|
||||
|
||||
If `gbrain search` returns no results or any non-zero exit, proceed
|
||||
without brain context. Full search/read protocol + examples:
|
||||
see `docs/gbrain-write-surfaces.md` §Context Load.
|
||||
|
||||
For structured-data extraction requests ("track this", "extract from emails", "build a tracker"), route to GBrain's data-research skill instead: `gbrain call data-research`.
|
||||
|
||||
## Phase 1: Root Cause Investigation
|
||||
|
||||
|
|
@ -1072,7 +1084,28 @@ staleness detection: if those files are later deleted, the learning can be flagg
|
|||
**Only log genuine discoveries.** Don't log obvious things. Don't log things the user
|
||||
already knows. A good test: would this insight save time in a future session? If yes, log it.
|
||||
|
||||
## Save Results to Brain
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
After completing this skill, save the output:
|
||||
|
||||
```bash
|
||||
gbrain put "investigations/<feature-slug>" --content "$(cat <<'EOF'
|
||||
---
|
||||
title: "Investigation: <feature name>"
|
||||
tags: [investigation, <feature-slug>]
|
||||
---
|
||||
<skill output in markdown>
|
||||
EOF
|
||||
)"
|
||||
```
|
||||
|
||||
Then extract person/org entities and create stub pages for each one.
|
||||
Throttle errors (exit 1 with "throttle"/"rate limit"/"busy") and any
|
||||
other non-zero exit are transient — don't retry inline. Full entity-stub
|
||||
template, throttle handling, and backlink protocol:
|
||||
see `docs/gbrain-write-surfaces.md` §Save Template.
|
||||
|
||||
---
|
||||
|
||||
|
|
|
|||
|
|
@ -903,7 +903,17 @@ You are a **YC office hours partner**. Your job is to ensure the problem is unde
|
|||
|
||||
---
|
||||
|
||||
## Brain Context Load
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
Extract 2-4 keywords from the user's request. Search the brain:
|
||||
`gbrain search "<keywords>"`. Read the top 3 results with
|
||||
`gbrain get_page "<slug>"`. Use that context to inform your analysis.
|
||||
|
||||
If `gbrain search` returns no results or any non-zero exit, proceed
|
||||
without brain context. Full search/read protocol + examples:
|
||||
see `docs/gbrain-write-surfaces.md` §Context Load.
|
||||
|
||||
## Brain Context (preflight)
|
||||
|
||||
|
|
|
|||
|
|
@ -233,7 +233,28 @@ Present the reviewed design doc to the user via AskUserQuestion:
|
|||
- B) Revise — specify which sections need changes (loop back to revise those sections)
|
||||
- C) Start over — return to Phase 2
|
||||
|
||||
## Save Results to Brain
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
After completing this skill, save the output:
|
||||
|
||||
```bash
|
||||
gbrain put "office-hours/<feature-slug>" --content "$(cat <<'EOF'
|
||||
---
|
||||
title: "Office Hours: <feature name>"
|
||||
tags: [design-doc, <feature-slug>]
|
||||
---
|
||||
<skill output in markdown>
|
||||
EOF
|
||||
)"
|
||||
```
|
||||
|
||||
Then extract person/org entities and create stub pages for each one.
|
||||
Throttle errors (exit 1 with "throttle"/"rate limit"/"busy") and any
|
||||
other non-zero exit are transient — don't retry inline. Full entity-stub
|
||||
template, throttle handling, and backlink protocol:
|
||||
see `docs/gbrain-write-surfaces.md` §Save Template.
|
||||
|
||||
## Brain Calibration Write-Back (Phase 2 / gated)
|
||||
|
||||
|
|
|
|||
|
|
@ -1178,7 +1178,17 @@ matches a past learning, display:
|
|||
This makes the compounding visible. The user should see that gstack is getting
|
||||
smarter on their codebase over time.
|
||||
|
||||
## Brain Context Load
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
Extract 2-4 keywords from the user's request. Search the brain:
|
||||
`gbrain search "<keywords>"`. Read the top 3 results with
|
||||
`gbrain get_page "<slug>"`. Use that context to inform your analysis.
|
||||
|
||||
If `gbrain search` returns no results or any non-zero exit, proceed
|
||||
without brain context. Full search/read protocol + examples:
|
||||
see `docs/gbrain-write-surfaces.md` §Context Load.
|
||||
|
||||
## Brain Context (preflight)
|
||||
|
||||
|
|
|
|||
|
|
@ -828,7 +828,28 @@ staleness detection: if those files are later deleted, the learning can be flagg
|
|||
**Only log genuine discoveries.** Don't log obvious things. Don't log things the user
|
||||
already knows. A good test: would this insight save time in a future session? If yes, log it.
|
||||
|
||||
## Save Results to Brain
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
After completing this skill, save the output:
|
||||
|
||||
```bash
|
||||
gbrain put "ceo-plans/<feature-slug>" --content "$(cat <<'EOF'
|
||||
---
|
||||
title: "CEO Plan: <feature name>"
|
||||
tags: [ceo-plan, <feature-slug>]
|
||||
---
|
||||
<skill output in markdown>
|
||||
EOF
|
||||
)"
|
||||
```
|
||||
|
||||
Then extract person/org entities and create stub pages for each one.
|
||||
Throttle errors (exit 1 with "throttle"/"rate limit"/"busy") and any
|
||||
other non-zero exit are transient — don't retry inline. Full entity-stub
|
||||
template, throttle handling, and backlink protocol:
|
||||
see `docs/gbrain-write-surfaces.md` §Save Template.
|
||||
|
||||
## Brain Calibration Write-Back (Phase 2 / gated)
|
||||
|
||||
|
|
|
|||
|
|
@ -531,7 +531,28 @@ staleness detection: if those files are later deleted, the learning can be flagg
|
|||
**Only log genuine discoveries.** Don't log obvious things. Don't log things the user
|
||||
already knows. A good test: would this insight save time in a future session? If yes, log it.
|
||||
|
||||
## Save Results to Brain
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
After completing this skill, save the output:
|
||||
|
||||
```bash
|
||||
gbrain put "design-reviews/<feature-slug>" --content "$(cat <<'EOF'
|
||||
---
|
||||
title: "Design Review: <feature name>"
|
||||
tags: [design-review, <feature-slug>]
|
||||
---
|
||||
<skill output in markdown>
|
||||
EOF
|
||||
)"
|
||||
```
|
||||
|
||||
Then extract person/org entities and create stub pages for each one.
|
||||
Throttle errors (exit 1 with "throttle"/"rate limit"/"busy") and any
|
||||
other non-zero exit are transient — don't retry inline. Full entity-stub
|
||||
template, throttle handling, and backlink protocol:
|
||||
see `docs/gbrain-write-surfaces.md` §Save Template.
|
||||
|
||||
## Brain Calibration Write-Back (Phase 2 / gated)
|
||||
|
||||
|
|
|
|||
|
|
@ -769,7 +769,28 @@ staleness detection: if those files are later deleted, the learning can be flagg
|
|||
**Only log genuine discoveries.** Don't log obvious things. Don't log things the user
|
||||
already knows. A good test: would this insight save time in a future session? If yes, log it.
|
||||
|
||||
## Save Results to Brain
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
After completing this skill, save the output:
|
||||
|
||||
```bash
|
||||
gbrain put "devex-reviews/<feature-slug>" --content "$(cat <<'EOF'
|
||||
---
|
||||
title: "Devex Review: <feature name>"
|
||||
tags: [devex-review, <feature-slug>]
|
||||
---
|
||||
<skill output in markdown>
|
||||
EOF
|
||||
)"
|
||||
```
|
||||
|
||||
Then extract person/org entities and create stub pages for each one.
|
||||
Throttle errors (exit 1 with "throttle"/"rate limit"/"busy") and any
|
||||
other non-zero exit are transient — don't retry inline. Full entity-stub
|
||||
template, throttle handling, and backlink protocol:
|
||||
see `docs/gbrain-write-surfaces.md` §Save Template.
|
||||
|
||||
## Brain Calibration Write-Back (Phase 2 / gated)
|
||||
|
||||
|
|
|
|||
|
|
@ -815,7 +815,17 @@ the failure occurred (if outcome is error, otherwise use empty string "").
|
|||
|
||||
Skills that run plan reviews (`/plan-*-review`, `/codex review`) include the EXIT PLAN MODE GATE blocking checklist at the end of the skill, which verifies the plan file ends with `## GSTACK REVIEW REPORT` before ExitPlanMode is called. Skills that don't run plan reviews (operational skills like `/ship`, `/qa`, `/review`) typically don't operate in plan mode and have no review report to verify; this footer is a no-op for them. Writing the plan file is the one edit allowed in plan mode.
|
||||
|
||||
## Brain Context Load
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
Extract 2-4 keywords from the user's request. Search the brain:
|
||||
`gbrain search "<keywords>"`. Read the top 3 results with
|
||||
`gbrain get_page "<slug>"`. Use that context to inform your analysis.
|
||||
|
||||
If `gbrain search` returns no results or any non-zero exit, proceed
|
||||
without brain context. Full search/read protocol + examples:
|
||||
see `docs/gbrain-write-surfaces.md` §Context Load.
|
||||
|
||||
# Plan Review Mode
|
||||
|
||||
|
|
|
|||
|
|
@ -854,7 +854,28 @@ staleness detection: if those files are later deleted, the learning can be flagg
|
|||
**Only log genuine discoveries.** Don't log obvious things. Don't log things the user
|
||||
already knows. A good test: would this insight save time in a future session? If yes, log it.
|
||||
|
||||
## Save Results to Brain
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
After completing this skill, save the output:
|
||||
|
||||
```bash
|
||||
gbrain put "eng-reviews/<feature-slug>" --content "$(cat <<'EOF'
|
||||
---
|
||||
title: "Eng Review: <feature name>"
|
||||
tags: [eng-review, <feature-slug>]
|
||||
---
|
||||
<skill output in markdown>
|
||||
EOF
|
||||
)"
|
||||
```
|
||||
|
||||
Then extract person/org entities and create stub pages for each one.
|
||||
Throttle errors (exit 1 with "throttle"/"rate limit"/"busy") and any
|
||||
other non-zero exit are transient — don't retry inline. Full entity-stub
|
||||
template, throttle handling, and backlink protocol:
|
||||
see `docs/gbrain-write-surfaces.md` §Save Template.
|
||||
|
||||
## Brain Calibration Write-Back (Phase 2 / gated)
|
||||
|
||||
|
|
|
|||
17
qa/SKILL.md
17
qa/SKILL.md
|
|
@ -855,7 +855,17 @@ branch name wherever the instructions say "the base branch" or `<default>`.
|
|||
|
||||
---
|
||||
|
||||
## Brain Context Load
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
Extract 2-4 keywords from the user's request. Search the brain:
|
||||
`gbrain search "<keywords>"`. Read the top 3 results with
|
||||
`gbrain get_page "<slug>"`. Use that context to inform your analysis.
|
||||
|
||||
If `gbrain search` returns no results or any non-zero exit, proceed
|
||||
without brain context. Full search/read protocol + examples:
|
||||
see `docs/gbrain-write-surfaces.md` §Context Load.
|
||||
|
||||
# /qa: Test → Fix → Verify
|
||||
|
||||
|
|
@ -1716,7 +1726,14 @@ staleness detection: if those files are later deleted, the learning can be flagg
|
|||
**Only log genuine discoveries.** Don't log obvious things. Don't log things the user
|
||||
already knows. A good test: would this insight save time in a future session? If yes, log it.
|
||||
|
||||
## Save Results to Brain
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
If the skill output is worth preserving, save it via
|
||||
`gbrain put "<slug>" --content "<frontmatter + markdown>"`. Full template
|
||||
(heredoc body, frontmatter shape, entity-stub instructions, throttle
|
||||
handling): see `docs/gbrain-write-surfaces.md` §Save Template.
|
||||
|
||||
## Additional Rules (qa-specific)
|
||||
|
||||
|
|
|
|||
|
|
@ -865,7 +865,17 @@ When the user types `/retro`, run this skill.
|
|||
- `/retro global` — cross-project retro across all AI coding tools (7d default)
|
||||
- `/retro global 14d` — cross-project retro with explicit window
|
||||
|
||||
## Brain Context Load
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
Extract 2-4 keywords from the user's request. Search the brain:
|
||||
`gbrain search "<keywords>"`. Read the top 3 results with
|
||||
`gbrain get_page "<slug>"`. Use that context to inform your analysis.
|
||||
|
||||
If `gbrain search` returns no results or any non-zero exit, proceed
|
||||
without brain context. Full search/read protocol + examples:
|
||||
see `docs/gbrain-write-surfaces.md` §Context Load.
|
||||
|
||||
## Instructions
|
||||
|
||||
|
|
@ -1246,7 +1256,28 @@ staleness detection: if those files are later deleted, the learning can be flagg
|
|||
**Only log genuine discoveries.** Don't log obvious things. Don't log things the user
|
||||
already knows. A good test: would this insight save time in a future session? If yes, log it.
|
||||
|
||||
## Save Results to Brain
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
After completing this skill, save the output:
|
||||
|
||||
```bash
|
||||
gbrain put "retros/<feature-slug>" --content "$(cat <<'EOF'
|
||||
---
|
||||
title: "Retro: <feature name>"
|
||||
tags: [retro, <feature-slug>]
|
||||
---
|
||||
<skill output in markdown>
|
||||
EOF
|
||||
)"
|
||||
```
|
||||
|
||||
Then extract person/org entities and create stub pages for each one.
|
||||
Throttle errors (exit 1 with "throttle"/"rate limit"/"busy") and any
|
||||
other non-zero exit are transient — don't retry inline. Full entity-stub
|
||||
template, throttle handling, and backlink protocol:
|
||||
see `docs/gbrain-write-surfaces.md` §Save Template.
|
||||
|
||||
### Step 10: Week-over-Week Trends (if window >= 14d)
|
||||
|
||||
|
|
|
|||
|
|
@ -865,7 +865,17 @@ branch name wherever the instructions say "the base branch" or `<default>`.
|
|||
|
||||
---
|
||||
|
||||
## Brain Context Load
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
Extract 2-4 keywords from the user's request. Search the brain:
|
||||
`gbrain search "<keywords>"`. Read the top 3 results with
|
||||
`gbrain get_page "<slug>"`. Use that context to inform your analysis.
|
||||
|
||||
If `gbrain search` returns no results or any non-zero exit, proceed
|
||||
without brain context. Full search/read protocol + examples:
|
||||
see `docs/gbrain-write-surfaces.md` §Context Load.
|
||||
|
||||
# Ship: Fully Automated Ship Workflow
|
||||
|
||||
|
|
|
|||
|
|
@ -189,7 +189,28 @@ staleness detection: if those files are later deleted, the learning can be flagg
|
|||
**Only log genuine discoveries.** Don't log obvious things. Don't log things the user
|
||||
already knows. A good test: would this insight save time in a future session? If yes, log it.
|
||||
|
||||
## Save Results to Brain
|
||||
|
||||
**Skip this entire section if `gbrain` is not on PATH.**
|
||||
|
||||
After completing this skill, save the output:
|
||||
|
||||
```bash
|
||||
gbrain put "releases/<feature-slug>" --content "$(cat <<'EOF'
|
||||
---
|
||||
title: "Release: <feature name>"
|
||||
tags: [release, <feature-slug>]
|
||||
---
|
||||
<skill output in markdown>
|
||||
EOF
|
||||
)"
|
||||
```
|
||||
|
||||
Then extract person/org entities and create stub pages for each one.
|
||||
Throttle errors (exit 1 with "throttle"/"rate limit"/"busy") and any
|
||||
other non-zero exit are transient — don't retry inline. Full entity-stub
|
||||
template, throttle handling, and backlink protocol:
|
||||
see `docs/gbrain-write-surfaces.md` §Save Template.
|
||||
|
||||
### Refresh learnings for the headline feature on this branch
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue