skills/bigproject/SKILL.md
Use when you have a large-scale, multi-phase project requiring orchestrated execution.
npx skillsauth add seokan-jeong/team-shinchan team-shinchan:bigprojectInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Output immediately before executing:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🌸 [Himawari] Large-scale project mode engaged! 🚀
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
A big project is decomposed into phases, and each phase runs the full start
workflow — Stage 1 Requirements (full Misae interview) → Stage 2 Planning (Nene) →
Stage 3 micro-execute → Stage 4 Completion (RETROSPECTIVE + final AK).
This skill runs on the main thread and drives the phase loop itself. That is required:
each phase's Stage-1 interview uses AskUserQuestion, which only the main thread can call —
a sub-agent cannot. So Himawari is used only to decompose (it returns a phase plan); the
main thread then runs each phase. Expect one full requirements interview per phase — this
is intentional and carries real token/latency cost on large projects.
Layout (flat siblings — parent dir holds only PROJECT.yaml, which the
*/WORKFLOW_STATE.yaml globs ignore):
.shinchan-docs/{PROJECT_ID}/PROJECT.yaml
.shinchan-docs/{PROJECT_ID}-phase-1/WORKFLOW_STATE.yaml (+ REQUESTS/PROGRESS/RETROSPECTIVE…)
.shinchan-docs/{PROJECT_ID}-phase-2/...
If args is empty or only whitespace:
Ask user: "What large-scale project would you like to tackle?"
STOP and wait for user response
If args length > 2000 characters:
Truncate to 2000 characters
Warn user: "Request was truncated to 2000 characters"
This skill is for large projects meeting ANY of these criteria:
| Criteria | Threshold | |----------|-----------| | Phases | 3+ phases | | Files | 20+ files affected | | Domains | 3+ domains (frontend + backend + infra) | | Duration | Multi-session effort |
If the project clearly doesn't meet these criteria, recommend /team-shinchan:start instead and STOP.
PROJECT_ID: if args contains ISSUE-xxx use it; else {branch}-{next_index}
from git branch + ls .shinchan-docs/ (ignore *-phase-* and archived/).Task(subagent_type="team-shinchan:himawari", model="opus",
prompt=`mode: DECOMPOSE_ONLY
PROJECT_ID: ${PROJECT_ID}
user_request: ${args}
Return EXACTLY ONE fenced \`phase-plan\` JSON block per agents/himawari.md contract.
Do NOT assign or execute agents. Do NOT write any .shinchan-docs/ files.`)
Parse the last ```phase-plan ``` fenced JSON block. Validate the contract:
phases length ≥ 2 (if it collapses to 1, recommend /team-shinchan:start and STOP).n; non-empty title; domain ∈
{frontend, backend, devops, fullstack, infra}; non-empty acceptance_criteria[];
suggested_agent ∈ {aichan, buriburi, masao, bo, kazama}.depends_on references only existing phase numbers; no cycles.execution_order is a topological sort covering every phase exactly once.On any validation failure: re-invoke Himawari with the specific reason appended
("CRITICAL: your previous phase-plan failed validation: {reason}. Re-emit one valid
phase-plan block."). Retry up to 2 times. On 3rd failure: print the raw Himawari
output verbatim and STOP.
mkdir -p .shinchan-docs/{PROJECT_ID}.shinchan-docs/{PROJECT_ID}/PROJECT.yaml from the phase-plan
(validate against schemas/project-state.schema.json):schema_version: 1
kind: project
project_id: "{PROJECT_ID}"
title: "{title}"
output_format: markdown # or html if the user/project prefers; inherited by phases
created: "{ISO timestamp}"
updated: "{ISO timestamp}"
current:
status: active
active_phase: null
phases:
- n: 1
title: "{phase 1 title}"
domain: backend
depends_on: []
child_doc_id: "{PROJECT_ID}-phase-1"
status: pending
suggested_agent: buriburi
acceptance_criteria:
- "{criterion}"
# …one entry per phase…
history:
- timestamp: "{ISO timestamp}"
event: project_started
agent: himawari
Phase | Title | Domain | Depends-on | Agent | Acceptance, plus any cross_phase_risks.user_decision = AskUserQuestion(questions=[{
question: "이 phase 계획으로 진행할까요? (각 phase는 요구사항 인터뷰부터 풀 워크플로우로 실행됩니다)",
header: "프로젝트 계획 승인",
options: [
{label: "A. 승인 — phase 1부터 시작", description: "PROJECT.yaml 확정 후 phase 루프 시작"},
{label: "B. 계획 수정", description: "phase 분해를 어떻게 바꿀지 알려주세요"},
{label: "C. 취소", description: "프로젝트를 시작하지 않습니다"}
],
multiSelect: false
}])
Iterate phases in execution_order. On resume, skip any phase whose status == complete.
For each phase P:
Dependency gate: if any phase in P.depends_on is not complete → mark P blocked
in PROJECT.yaml, report, and escalate to the user.
In PROJECT.yaml set phases[P].status = in_progress, current.active_phase = P.n,
refresh updated, append a phase_started history event.
Run the start workflow for this phase — execute the steps documented in
skills/start/SKILL.md Steps 1 → 2B on the main thread, treating these as the
skill's "Injected Context":
DOC_ID = {PROJECT_ID}-phase-{P.n} (use verbatim; do NOT regenerate)parent_doc_id = {PROJECT_ID}, phase_number = P.nPHASE_CONTEXT = project title + P's title/domain/acceptance_criteria +
one-line summaries of all completed phases (so Misae scopes the interview to P)start Step 1 creates .shinchan-docs/{PROJECT_ID}-phase-{P.n}/WORKFLOW_STATE.yaml
(with parent_doc_id/phase_number); Step 2A runs the full main-thread Misae interview;
Step 2B fires Task(team-shinchan:shinnosuke) for Stages 2–4 of this phase, ending in
RETROSPECTIVE.md + IMPLEMENTATION.md + a final Action Kamen review for the phase.
Checkpoint (after the phase's Shinnosuke Task returns):
WORKFLOW_STATE.yaml; confirm status: completed and the final AK
verdict is APPROVED. If not → mark phases[P].status = blocked, report, escalate.shared_resources, run
Task(subagent_type="team-shinchan:actionkamen") to review for regressions across the
affected child docs. On regression → set PROJECT current.status = blocked, escalate.phases[P].status = complete, refresh updated, append a phase_completed event.When every phase is complete:
RETROSPECTIVE.md into
.shinchan-docs/{PROJECT_ID}/PROJECT_RETROSPECTIVE.md (per-phase summary + cross-phase
learnings + risks that materialized).Task(subagent_type="team-shinchan:actionkamen") across phases.current.status = completed, current.active_phase = null, refresh
updated, append a project_completed event.complete without a child status: completed + AK APPROVED..shinchan-docs/{PROJECT_ID}/ (must be flat siblings
{PROJECT_ID}-phase-N/, or the workflow guard and /team-shinchan:resume can't see them).testing
Default-on interview option-quality panel — N diverse generators produce structure-free options, a SelfCheckGPT majority-vote consensus filters hallucinations, a SteerConf cautious-confidence judge scores survivors, and a deterministic top-K is returned. Workflow tier; the single fierce-* skill that is ON by default.
development
Deterministic adversarial code review for high-stakes scope — independent per-dimension review, a non-skippable per-finding refutation, completeness + interaction critics, and a deterministic 3-lens rubric judge panel. Opt-in main-loop Workflow tier.
data-ai
Deterministic loop-until-done for high-stakes long-running tasks — a worker/verifier loop the script bounds by iteration cap, token budget, and stagnation, closed by an Action-Kamen gate. Opt-in main-loop Workflow tier.
testing
Deterministic adversarial debate for high-stakes or irreversible decisions — mandatory refutation plus a scored judge panel. Opt-in main-loop Workflow tier.