From starlight-intelligence-system
Catalogs, scaffolds, and audits per-repo tech stacks across brands (Arcanea, FrankX, Business, Starlight). Four verbs: audit, scaffold, assign, diff. Detects drift between STACK.md intent and reality.
How this skill is triggered — by the user, by Claude, or both
Slash command
/starlight-intelligence-system:gencreator-stackThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
> *Every repo is an agent surface. Every brand is a constellation of surfaces. This skill is how you keep the map honest.*
Every repo is an agent surface. Every brand is a constellation of surfaces. This skill is how you keep the map honest.
Auto-activates when the user's question spans more than one repo or asks about tool assignment across the ecosystem. Pair with starlight-architect (Leadership tier). For single-repo decisions, defer to engineering:architecture (single ADR). For new brand spawning, compose with integration/domain-stack-architecture (vertical-tier scaffolder).
Frank operates 6+ active repos across 4+ brands. Each surface has a coding agent (Claude Code / Codex / Cursor / Gemini CLI), a reasoning surface (Claude Project / ChatGPT Project / Gemini Gem / Custom GPT), a research browser (Arc Space / Chrome+CIC / Comet), and a stack of native MCPs (Vercel / Supabase / Notion / Linear / Figma / GitHub / Gmail / Calendar). Without a manifest, three failure modes compound:
CLAUDE.md claims a tool that's no longer wired. Claude Code in that repo runs with stale context.The skill makes the manifest first-class: one STACK.md per repo, rolled up into one constellation file at substrate level. Drift detection runs weekly so entropy never compounds past 7 days.
audit — walk every repo, emit the constellationpython skills/orchestration/gencreator-stack/scripts/stack.py audit
Walks the inventory at skills/orchestration/gencreator-stack/assets/inventory.json, reads each repo's CLAUDE.md + STACK.md (if present), and writes context/stack-constellation.md — the single source of truth for "what runs where". Output is sorted by brand, then by surface tier (substrate → reasoning → coding → research → ops). Repos missing STACK.md show up as gaps with a scaffold hint.
scaffold — drop STACK.md template into a target repopython skills/orchestration/gencreator-stack/scripts/stack.py scaffold --repo C:\Users\frank\Arcanea
Copies assets/STACK.template.md into the target repo (refuses to overwrite — Frank-ack required). The template is pre-filled with the canonical five-tier matrix and prompts for repo-specific bindings.
assign — bind tools to tiers via guided promptpython skills/orchestration/gencreator-stack/scripts/stack.py assign --repo C:\Users\frank\FrankX
Reads existing STACK.md, asks Frank (via stdin or AskUserQuestion when running in Cowork) to confirm or change tool bindings for each of the five tiers. Writes back to STACK.md with timestamped change log. No manual editing of the markdown table required.
diff — surface drift between intent and realitypython skills/orchestration/gencreator-stack/scripts/stack.py diff
This is the high-leverage verb. For each repo with a STACK.md, the script compares the manifest against actual filesystem state:
.mcp.json — does every MCP claimed in STACK.md actually appear here?.claude/settings.json and .claude/CLAUDE.md — does the claimed Claude Code config exist?.cursor/ or .cursorrules — present iff Cursor is claimed as a coding agent.codex/ / .gemini/ / .antigravity/ — present iff those agents are claimedvercel-mcp but no Vercel project exists in .vercel/ or no vercel.json at root → suspected driftOutputs context/stack-drift-<ISO8601>.md with green / yellow / red status per repo. Yellow = manifest says X, reality says X' (close but different). Red = manifest says X, reality has no trace of X.
Every STACK.md carries this matrix. Tiers are normative — do not invent a sixth without a board pass.
| Tier | Role | Canonical picks (pick one per repo) |
|---|---|---|
| Substrate | Persistent context, memory, attestation | Starlight Intelligence System (always) |
| Reasoning | Long-form thinking, research synthesis, project-scoped chat | Claude Project · ChatGPT Project · Gemini Gem · Perplexity Space · Grok |
| Coding | Code execution agents (CLI / IDE) | Claude Code · Codex CLI · Gemini CLI · Cursor · Antigravity · GitHub Copilot CLI · Aider |
| Research browser | Read + agentic web | Arc Space · Chrome + Claude-in-Chrome · Comet · Opera Workspaces |
| Ops MCPs | Native connectors | Notion · Linear · Vercel · Supabase · GitHub · Gmail · Calendar · Figma · Slack · Drive · Bunq |
Rationale for the picks lives in references/tier-rationale.md. Read it before overriding the defaults.
The repo list lives in assets/inventory.json. Hand-maintained. Each entry has: brand, path, role (production / development / private / docs / oss), and whether STACK.md is expected. Add new repos here, not inline.
integration/repo-bridge — when a STACK move requires cross-repo coordinationintegration/ecosystem-sync — when STACK changes need to propagate to ecosystem manifestintelligence/decision-framework — when assign faces a contested bindingvision/voice-anti-slop — when generating STACK.md prose (no AI-slop in machine-readable manifests)engineering:architectureintegration/domain-stack-architectureSTACK.md (the universal IS taxonomy) → that's substrate-tier, requires /starlight-board| Verb | Writes |
|---|---|
| audit | context/stack-constellation.md (idempotent — same input, same output) |
| scaffold | <target-repo>/STACK.md (refuses overwrite) |
| assign | <target-repo>/STACK.md (updates in place, appends change log) |
| diff | context/stack-drift-<ISO8601>.md (timestamped, one per run) |
Weekly diff runs Sun 08:30 (before /vault-atlas at 08:45). Surfaces drift before Frank starts the week. If drift count > 3 OR any red status, the scheduler escalates a single Memory Bus atom of kind stack-drift-alert so it surfaces on Monday's cockpit.
Built on SIP · gencreator-stack skill · v1.0.0
npx claudepluginhub frankxai/starlight-intelligence-systemProvides a checklist for code reviews covering functionality, security, performance, maintainability, tests, and quality. Use for pull requests, audits, team standards, and developer training.