mirror of
https://github.com/garrytan/gstack.git
synced 2026-05-08 13:39:45 +08:00
feat: gbrain.context_queries manifests on 6 V1 skills (Lane E partial)
Adds the V1 retrieval contracts. Each skill declares what it wants gbrain
to surface in the preamble at invocation time:
/office-hours — prior sessions + builder profile + design docs
+ recent eureka (4 queries)
/plan-ceo-review — prior CEO plans + design docs + recent CEO review
activity (3 queries)
/design-shotgun — prior approved variants + DESIGN.md + recent
design docs (3 queries)
/design-consultation — existing DESIGN.md + prior design decisions +
brand-related notes (3 queries)
/investigate — prior investigations + project learnings + recent
eureka cross-project (3 queries)
/retro — prior retros + recent timeline + recent learnings
(3 queries)
Each query carries an explicit kind (vector | list | filesystem) per D3,
schema: 1 versioning per D15, and {repo_slug} template var per F7
cross-repo-contamination cleanup. Mix of vector / list / filesystem
matches what each skill actually needs:
- filesystem (mtime_desc + tail) for log JSONL + curated markdown
- list with tags_contains filter for typed gbrain pages
- (vector reserved for V1.0.1 when gbrain query surface stabilizes)
Smoke test: bun run bin/gstack-brain-context-load.ts --skill-file
office-hours/SKILL.md --repo test-repo --explain returns mode=manifest
queries=4 with the filesystem kinds populating real data from
~/.gstack/builder-profile.jsonl + ~/.gstack/analytics/eureka.jsonl on
this Mac. End-to-end retrieval flow confirmed.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -23,6 +23,29 @@ triggers:
|
||||
- design system
|
||||
- create a brand
|
||||
- design from scratch
|
||||
gbrain:
|
||||
schema: 1
|
||||
context_queries:
|
||||
- id: existing-design-md
|
||||
kind: filesystem
|
||||
glob: "DESIGN.md"
|
||||
tail: 1
|
||||
render_as: "## Existing DESIGN.md (if any)"
|
||||
- id: prior-design-decisions
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/projects/{repo_slug}/*-design-*.md"
|
||||
sort: mtime_desc
|
||||
limit: 3
|
||||
render_as: "## Prior design decisions for this project"
|
||||
- id: brand-guidelines
|
||||
kind: list
|
||||
filter:
|
||||
type: ceo-plan
|
||||
tags_contains: "repo:{repo_slug}"
|
||||
content_contains: "brand"
|
||||
sort: updated_at_desc
|
||||
limit: 3
|
||||
render_as: "## Brand-related notes from CEO plans"
|
||||
---
|
||||
<!-- AUTO-GENERATED from SKILL.md.tmpl — do not edit directly -->
|
||||
<!-- Regenerate: bun run gen:skill-docs -->
|
||||
|
||||
@@ -23,6 +23,29 @@ triggers:
|
||||
- design system
|
||||
- create a brand
|
||||
- design from scratch
|
||||
gbrain:
|
||||
schema: 1
|
||||
context_queries:
|
||||
- id: existing-design-md
|
||||
kind: filesystem
|
||||
glob: "DESIGN.md"
|
||||
tail: 1
|
||||
render_as: "## Existing DESIGN.md (if any)"
|
||||
- id: prior-design-decisions
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/projects/{repo_slug}/*-design-*.md"
|
||||
sort: mtime_desc
|
||||
limit: 3
|
||||
render_as: "## Prior design decisions for this project"
|
||||
- id: brand-guidelines
|
||||
kind: list
|
||||
filter:
|
||||
type: ceo-plan
|
||||
tags_contains: "repo:{repo_slug}"
|
||||
content_contains: "brand"
|
||||
sort: updated_at_desc
|
||||
limit: 3
|
||||
render_as: "## Brand-related notes from CEO plans"
|
||||
---
|
||||
|
||||
{{PREAMBLE}}
|
||||
|
||||
@@ -20,6 +20,26 @@ allowed-tools:
|
||||
- Grep
|
||||
- Agent
|
||||
- AskUserQuestion
|
||||
gbrain:
|
||||
schema: 1
|
||||
context_queries:
|
||||
- id: prior-approved-variants
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/projects/{repo_slug}/designs/*/approved.json"
|
||||
sort: mtime_desc
|
||||
limit: 5
|
||||
render_as: "## Prior approved design variants for this project"
|
||||
- id: design-md
|
||||
kind: filesystem
|
||||
glob: "DESIGN.md"
|
||||
tail: 1
|
||||
render_as: "## DESIGN.md (project design system)"
|
||||
- id: recent-design-docs
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/projects/{repo_slug}/*-design-*.md"
|
||||
sort: mtime_desc
|
||||
limit: 3
|
||||
render_as: "## Recent design docs"
|
||||
---
|
||||
<!-- AUTO-GENERATED from SKILL.md.tmpl — do not edit directly -->
|
||||
<!-- Regenerate: bun run gen:skill-docs -->
|
||||
|
||||
@@ -20,6 +20,26 @@ allowed-tools:
|
||||
- Grep
|
||||
- Agent
|
||||
- AskUserQuestion
|
||||
gbrain:
|
||||
schema: 1
|
||||
context_queries:
|
||||
- id: prior-approved-variants
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/projects/{repo_slug}/designs/*/approved.json"
|
||||
sort: mtime_desc
|
||||
limit: 5
|
||||
render_as: "## Prior approved design variants for this project"
|
||||
- id: design-md
|
||||
kind: filesystem
|
||||
glob: "DESIGN.md"
|
||||
tail: 1
|
||||
render_as: "## DESIGN.md (project design system)"
|
||||
- id: recent-design-docs
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/projects/{repo_slug}/*-design-*.md"
|
||||
sort: mtime_desc
|
||||
limit: 3
|
||||
render_as: "## Recent design docs"
|
||||
---
|
||||
|
||||
{{PREAMBLE}}
|
||||
|
||||
@@ -37,6 +37,28 @@ hooks:
|
||||
- type: command
|
||||
command: "bash ${CLAUDE_SKILL_DIR}/../freeze/bin/check-freeze.sh"
|
||||
statusMessage: "Checking debug scope boundary..."
|
||||
gbrain:
|
||||
schema: 1
|
||||
context_queries:
|
||||
- id: prior-investigations
|
||||
kind: list
|
||||
filter:
|
||||
type: timeline
|
||||
tags_contains: "repo:{repo_slug}"
|
||||
content_contains: "investigate"
|
||||
sort: updated_at_desc
|
||||
limit: 5
|
||||
render_as: "## Prior investigations in this repo"
|
||||
- id: project-learnings
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/projects/{repo_slug}/learnings.jsonl"
|
||||
tail: 10
|
||||
render_as: "## Recent learnings (patterns + pitfalls)"
|
||||
- id: recent-eureka
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/analytics/eureka.jsonl"
|
||||
tail: 5
|
||||
render_as: "## Recent eureka moments (cross-project)"
|
||||
---
|
||||
<!-- AUTO-GENERATED from SKILL.md.tmpl — do not edit directly -->
|
||||
<!-- Regenerate: bun run gen:skill-docs -->
|
||||
|
||||
@@ -37,6 +37,28 @@ hooks:
|
||||
- type: command
|
||||
command: "bash ${CLAUDE_SKILL_DIR}/../freeze/bin/check-freeze.sh"
|
||||
statusMessage: "Checking debug scope boundary..."
|
||||
gbrain:
|
||||
schema: 1
|
||||
context_queries:
|
||||
- id: prior-investigations
|
||||
kind: list
|
||||
filter:
|
||||
type: timeline
|
||||
tags_contains: "repo:{repo_slug}"
|
||||
content_contains: "investigate"
|
||||
sort: updated_at_desc
|
||||
limit: 5
|
||||
render_as: "## Prior investigations in this repo"
|
||||
- id: project-learnings
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/projects/{repo_slug}/learnings.jsonl"
|
||||
tail: 10
|
||||
render_as: "## Recent learnings (patterns + pitfalls)"
|
||||
- id: recent-eureka
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/analytics/eureka.jsonl"
|
||||
tail: 5
|
||||
render_as: "## Recent eureka moments (cross-project)"
|
||||
---
|
||||
|
||||
{{PREAMBLE}}
|
||||
|
||||
@@ -28,6 +28,33 @@ triggers:
|
||||
- is this worth building
|
||||
- help me think through
|
||||
- office hours
|
||||
gbrain:
|
||||
schema: 1
|
||||
context_queries:
|
||||
- id: prior-sessions
|
||||
kind: list
|
||||
filter:
|
||||
type: ceo-plan
|
||||
tags_contains: "repo:{repo_slug}"
|
||||
sort: updated_at_desc
|
||||
limit: 5
|
||||
render_as: "## Prior office-hours sessions in this repo"
|
||||
- id: builder-profile
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/builder-profile.jsonl"
|
||||
tail: 1
|
||||
render_as: "## Your builder profile snapshot"
|
||||
- id: design-doc-history
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/projects/{repo_slug}/*-design-*.md"
|
||||
sort: mtime_desc
|
||||
limit: 3
|
||||
render_as: "## Recent design docs for this project"
|
||||
- id: prior-eureka
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/analytics/eureka.jsonl"
|
||||
tail: 5
|
||||
render_as: "## Recent eureka moments"
|
||||
---
|
||||
<!-- AUTO-GENERATED from SKILL.md.tmpl — do not edit directly -->
|
||||
<!-- Regenerate: bun run gen:skill-docs -->
|
||||
|
||||
@@ -28,6 +28,33 @@ triggers:
|
||||
- is this worth building
|
||||
- help me think through
|
||||
- office hours
|
||||
gbrain:
|
||||
schema: 1
|
||||
context_queries:
|
||||
- id: prior-sessions
|
||||
kind: list
|
||||
filter:
|
||||
type: ceo-plan
|
||||
tags_contains: "repo:{repo_slug}"
|
||||
sort: updated_at_desc
|
||||
limit: 5
|
||||
render_as: "## Prior office-hours sessions in this repo"
|
||||
- id: builder-profile
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/builder-profile.jsonl"
|
||||
tail: 1
|
||||
render_as: "## Your builder profile snapshot"
|
||||
- id: design-doc-history
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/projects/{repo_slug}/*-design-*.md"
|
||||
sort: mtime_desc
|
||||
limit: 3
|
||||
render_as: "## Recent design docs for this project"
|
||||
- id: prior-eureka
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/analytics/eureka.jsonl"
|
||||
tail: 5
|
||||
render_as: "## Recent eureka moments"
|
||||
---
|
||||
|
||||
{{PREAMBLE}}
|
||||
|
||||
@@ -25,6 +25,30 @@ triggers:
|
||||
- expand scope
|
||||
- strategy review
|
||||
- rethink this plan
|
||||
gbrain:
|
||||
schema: 1
|
||||
context_queries:
|
||||
- id: prior-ceo-plans
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/projects/{repo_slug}/ceo-plans/*.md"
|
||||
sort: mtime_desc
|
||||
limit: 5
|
||||
render_as: "## Prior CEO plans for this project"
|
||||
- id: recent-design-docs
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/projects/{repo_slug}/*-design-*.md"
|
||||
sort: mtime_desc
|
||||
limit: 3
|
||||
render_as: "## Recent design docs for this project"
|
||||
- id: recent-reviews
|
||||
kind: list
|
||||
filter:
|
||||
type: timeline
|
||||
tags_contains: "repo:{repo_slug}"
|
||||
content_contains: "plan-ceo-review"
|
||||
sort: updated_at_desc
|
||||
limit: 5
|
||||
render_as: "## Recent CEO review activity"
|
||||
---
|
||||
<!-- AUTO-GENERATED from SKILL.md.tmpl — do not edit directly -->
|
||||
<!-- Regenerate: bun run gen:skill-docs -->
|
||||
|
||||
@@ -25,6 +25,30 @@ triggers:
|
||||
- expand scope
|
||||
- strategy review
|
||||
- rethink this plan
|
||||
gbrain:
|
||||
schema: 1
|
||||
context_queries:
|
||||
- id: prior-ceo-plans
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/projects/{repo_slug}/ceo-plans/*.md"
|
||||
sort: mtime_desc
|
||||
limit: 5
|
||||
render_as: "## Prior CEO plans for this project"
|
||||
- id: recent-design-docs
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/projects/{repo_slug}/*-design-*.md"
|
||||
sort: mtime_desc
|
||||
limit: 3
|
||||
render_as: "## Recent design docs for this project"
|
||||
- id: recent-reviews
|
||||
kind: list
|
||||
filter:
|
||||
type: timeline
|
||||
tags_contains: "repo:{repo_slug}"
|
||||
content_contains: "plan-ceo-review"
|
||||
sort: updated_at_desc
|
||||
limit: 5
|
||||
render_as: "## Recent CEO review activity"
|
||||
---
|
||||
|
||||
{{PREAMBLE}}
|
||||
|
||||
@@ -18,6 +18,25 @@ triggers:
|
||||
- weekly retro
|
||||
- what did we ship
|
||||
- engineering retrospective
|
||||
gbrain:
|
||||
schema: 1
|
||||
context_queries:
|
||||
- id: prior-retros
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/projects/{repo_slug}/retros/*.md"
|
||||
sort: mtime_desc
|
||||
limit: 5
|
||||
render_as: "## Prior retros for this project"
|
||||
- id: recent-timeline
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/projects/{repo_slug}/timeline.jsonl"
|
||||
tail: 30
|
||||
render_as: "## Recent timeline events"
|
||||
- id: recent-learnings
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/projects/{repo_slug}/learnings.jsonl"
|
||||
tail: 10
|
||||
render_as: "## Recent learnings"
|
||||
---
|
||||
<!-- AUTO-GENERATED from SKILL.md.tmpl — do not edit directly -->
|
||||
<!-- Regenerate: bun run gen:skill-docs -->
|
||||
|
||||
@@ -18,6 +18,25 @@ triggers:
|
||||
- weekly retro
|
||||
- what did we ship
|
||||
- engineering retrospective
|
||||
gbrain:
|
||||
schema: 1
|
||||
context_queries:
|
||||
- id: prior-retros
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/projects/{repo_slug}/retros/*.md"
|
||||
sort: mtime_desc
|
||||
limit: 5
|
||||
render_as: "## Prior retros for this project"
|
||||
- id: recent-timeline
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/projects/{repo_slug}/timeline.jsonl"
|
||||
tail: 30
|
||||
render_as: "## Recent timeline events"
|
||||
- id: recent-learnings
|
||||
kind: filesystem
|
||||
glob: "~/.gstack/projects/{repo_slug}/learnings.jsonl"
|
||||
tail: 10
|
||||
render_as: "## Recent learnings"
|
||||
---
|
||||
|
||||
{{PREAMBLE}}
|
||||
|
||||
Reference in New Issue
Block a user