cs

Original🇨🇳 Chinese
Translated

The root entry of the CodeStable workflow family — introduces the overall system to users and routes users' specific requests to the correct cs-* sub-skills. Trigger scenarios: users only input `cs` / `/cs`, say "introduce codestable", "do something with codestable", "I want to do X, which skill should I use", "don't know which one to use", or users' described requests are open-ended (e.g., "start working") and haven't converged to a specific sub-skill. This skill itself **does not perform actual tasks** — it doesn't write specs, write code, or read/write content products in the codestable/ directory — it only performs scanning, routing, prompting, and then transfers control to the target sub-skill.

4installs
Added on

NPX Install

npx skill4agent add liuzhengdongfortest/codestable cs

SKILL.md Content (Chinese)

View Translation Comparison →

cs

cs
is the unified entry point of the CodeStable workflow family. When users start, they most likely won't specify a particular
cs-xxx
sub-skill — they might just say "I want to add permission verification", "there's a bug here", "introduce codestable to me", or even just send
cs
. This skill is responsible for handling these open-ended inputs, clarifying the intent, and then routing the user to the correct sub-skill.
Only two tasks, nothing more:
  1. When users come with specific requests → match the scenario routing table, tell users which
    cs-*
    to trigger, and briefly explain why
  2. When users just want to learn about the system / can't clearly state what they want to do → provide a concise system overview + let users choose or describe more specific requests
This skill does not perform actual tasks: it doesn't write specs, read/write content products under
codestable/
, or run processes on behalf of sub-skills. Its only output is "suggest which sub-skill to trigger".

Scans to perform first upon receiving a call

Do these before responding to users (do this every time; it's quick, just a few tool calls):
  1. Check if the repository has integrated CodeStable — use
    Glob codestable/
    to see if the top-level directory exists
  2. If it exists — read
    codestable/reference/system-overview.md
    (if available) as a more comprehensive system reference; use
    Glob
    on
    codestable/features/
    codestable/issues/
    codestable/roadmap/
    to see ongoing work (just get the directory names, no need to read each file)
  3. If it does not exist — note this, and later prompt users to run
    cs-onboard
    first
  4. Check the user's original input — is it an open-ended question or a specific request? If it's a request, match the routing table; if not, provide the system overview
Respond only after completing these scans. Make users feel you have a clear understanding instead of responding blindly.

Quick system overview (explain this when users have no specific requests / ask for an introduction)

CodeStable models software development activities into 6 entities + 3 processes, with all products gathered in the
codestable/
directory at the project root:
codestable/
├── requirements/    Requirement entity ("why this capability is needed", only records current status)
├── architecture/    Architecture entity ("what the system looks like now", only records current status)
├── roadmap/         Planning layer ("how to implement this large requirement next + module splitting + interface definition")
├── features/        Aggregation root for specs of new capabilities (design / impl / accept)
├── issues/          Aggregation root for specs of bug fixes (report / analyze / fix)
├── refactors/       Aggregation root for refactoring specs (beta)
└── compound/        Knowledge accumulation (learning / trick / decision / explore)
Three processes:
  • New capability development:
    cs-feat-design
    cs-feat-impl
    cs-feat-accept
    (start with
    cs-brainstorm
    triage if ideas are vague)
  • Bug fixing:
    cs-issue-report
    cs-issue-analyze
    cs-issue-fix
  • Refactoring (beta):
    cs-refactor
    /
    cs-refactor-ff
Cross-cutting: After any process, if "this is worth recording" → use
cs-learn
/
cs-trick
/
cs-decide
/
cs-explore
to store in
compound/
.
Core concept: It orchestrates the lifecycle of the software itself (requirements, architecture, features, bugs, decisions), not Agents. Human-in-the-loop — programmers are responsible for overall control, and AI is an efficient executor.
If the project has been onboarded, see
codestable/reference/system-overview.md
for a more detailed overview.

Scenario routing table

Match the user's input to a row in the table, then tell the user: "For this request, it is recommended to use
cs-xxx
because {one-sentence reason}".
User's input / What the user wants to doRoute to
No
codestable/
directory in the repository
First run
cs-onboard
— all other cs-* skills depend on this directory
Vague ideas / "I have an idea but haven't figured it out" / "Let's chat first" / "Not sure if it's a new feature"
cs-brainstorm
(after triage, route to design / feature-brainstorm documentation / roadmap)
New feature / new capability / "Add X" / "Implement XX"
cs-feat
(routes to design / ff / impl / accept)
BUG / exception / error / "This is wrong" / "Documentation is incorrect"
cs-issue
(routes to report / analyze / fix)
Code optimization / refactoring / rewrite (behavior unchanged)
cs-refactor
/
cs-refactor-ff
(beta)
Explore code / "How is X implemented" / research questions
cs-explore
Supplement / update requirement documentation
cs-req
Supplement / update / check architecture documentation / "Refresh architecture doc" / "Do architecture checkup"
cs-arch
Large requirement breakdown / "I want an X system" / scheduling planning / design module splitting + interface contracts
cs-roadmap
Technology selection / long-term constraints / coding conventions
cs-decide
Pitfall review / experience summary / "This is worth recording"
cs-learn
Reusable programming patterns / library usage / "Do X like this in the future"
cs-trick
Developer guide / user guide
cs-guide
Library API reference
cs-libdoc
User is in the middle of a feature / issue process and asks "What to do next"Route to the entry of the corresponding process (
cs-feat
/
cs-issue
), let the entry judge the current stage
If unable to match / user's input is too abstract: "It sounds like {guess}, but {what's missing} in your description. Is it {Option A} or {Option B}?" Let the user choose, don't guess blindly.

Special cases to pay attention to

Repository not integrated yet

If the user wants to perform any cs-* process but
codestable/
does not exist → explain this and recommend running
cs-onboard
first
. Do not route directly to cs-feat / cs-issue etc. on your own — their SKILL.md all assume
codestable/
already exists.

Large requirements mistaken as features

If the user mentions requests like "I want a permission system / notification center / SSO integration" which are obviously too big to complete as a single feature → do not route to
cs-feat
, route to
cs-brainstorm
(most likely will be judged as case 3 →
cs-roadmap
) or directly to
cs-roadmap
. Reason: Starting a feature directly will result in an oversized design that can't be accommodated.

"Modify X" but X is an existing feature

If the user says "Modify the Y behavior of X" → first ask whether this is a bug fix (X's current behavior is wrong) or a requirement change (X's current behavior is correct, but product strategy has changed):
  • Bug →
    cs-issue
  • Requirement change →
    cs-req
    (update requirement documentation) + then run
    cs-feat
    for implementation

Ongoing work

If scanning finds directories related to the user's description under
codestable/features/
or
codestable/issues/
→ mention "Noticed
features/2026-04-22-xxx/
already exists, do you want to continue working on this?" Let the user confirm whether to continue or start a new one, to avoid accidentally creating duplicate features.

Subdivision of accumulation skills

learning / trick / decision / explore are easily confused. Discrimination mnemonic:
  • Review "Encountered Y when doing X" →
    cs-learn
  • Prescription "Do X like this in the future" →
    cs-trick
  • Rule "All projects follow X from now on" →
    cs-decide
  • Investigation "What is X like now" →
    cs-explore
If unable to judge, ask the user: "Do you want to record this as {pitfall review / reusable prescription / long-term convention / research archive}?"

Introduction mode (when users only want to learn / don't know what to do)

Explain in this order, do not dump all information at once:
  1. One sentence: CodeStable is an AI coding workflow for serious engineering, orchestrating the software lifecycle instead of Agents
  2. Quick overview of 6 entities + 3 processes (see "Quick system overview" above)
  3. Ask the user: "Where do you want to start most?" Provide three specific prompts:
    • "I have a new feature to develop" → cs-feat
    • "There's a bug in the code" → cs-issue
    • "The project hasn't integrated CodeStable yet" → cs-onboard
Stop here, don't explain details of all sub-skills. Expand on specific ones only when the user asks.

Exit

This skill has no "documentation" step. The only exit condition is:
  • Have told the user which specific
    cs-*
    sub-skill to trigger next (or confirmed that the user only came to learn about the system and doesn't want to perform tasks)
Output example:
For this request, it is recommended to use
cs-xxx
— {one-sentence reason: because it specializes in handling X-type scenarios}. After triggering, it will {briefly describe what will happen: first scan existing specs / ask you to describe first / enter triage / ...}. Switch to
cs-xxx
now?
After confirmation, the user triggers that sub-skill (or directly uses the corresponding skill name in the same session), and this skill's work for this round ends.

Things not to do

  • Do not read/write content products under
    codestable/
    — do not open design.md, modify items.yaml, or create feature directories. These are tasks for sub-skills
  • Do not make decisions on behalf of sub-skills — e.g., do not perform brainstorm triage in this skill (that's
    cs-brainstorm
    's job), do not judge which mode cs-arch should use in this skill
  • Do not recommend multiple skills at once — only point to one path each time. If the user has two independent requests, split into two rounds: finish A first then return to B
  • Do not repeat details of the system overview
    codestable/reference/system-overview.md
    (exists after onboarding) is the authoritative full version; this skill only provides a concise overview
  • Do not bypass
    cs-onboard
    — if the repository is not integrated, onboard first, do not attempt to route directly to downstream skills