@vpxa/aikit 0.1.97 → 0.1.99
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/packages/cli/dist/constants-BHJ95m41.js +1 -0
- package/packages/cli/dist/index.js +3 -3
- package/packages/cli/dist/{init-DjZFwBjs.js → init-CVtbu7zj.js} +1 -1
- package/packages/cli/dist/{templates-DrkDLz-X.js → templates-DVcEiTlc.js} +27 -65
- package/packages/cli/dist/{user-CY8UN2JU.js → user-Dj8KE0_0.js} +1 -1
- package/scaffold/dist/definitions/bodies.mjs +145 -2
- package/scaffold/dist/definitions/protocols.mjs +403 -118
- package/scaffold/dist/definitions/skills.mjs +40 -0
- package/packages/cli/dist/constants-BSGpNyrr.js +0 -1
|
@@ -2300,6 +2300,46 @@ Wait for the user's response. If they request changes, make them and re-run the
|
|
|
2300
2300
|
- **Incremental validation** — Present design, get approval before moving on
|
|
2301
2301
|
- **Be flexible** — Go back and clarify when something doesn't make sense
|
|
2302
2302
|
|
|
2303
|
+
## Challenge Discipline
|
|
2304
|
+
|
|
2305
|
+
Every design MUST be stress-tested before presentation. Apply these checks:
|
|
2306
|
+
|
|
2307
|
+
### 1. Domain Model Cross-Reference
|
|
2308
|
+
|
|
2309
|
+
Before presenting any design, \`search\` curated knowledge for existing glossary, domain models, and naming conventions. The design must use **canonical terms** from the codebase — not synonyms, not approximations.
|
|
2310
|
+
|
|
2311
|
+
- If the design introduces a new term, justify why no existing term works
|
|
2312
|
+
- If fuzzy language exists ("handle the thing", "process the data"), sharpen it to precise domain terms
|
|
2313
|
+
- Cross-reference proposed interfaces against existing code: do the names, shapes, and flows match what's already there?
|
|
2314
|
+
|
|
2315
|
+
### 2. Contradiction Detection
|
|
2316
|
+
|
|
2317
|
+
Search the codebase for existing implementations that touch the same domain:
|
|
2318
|
+
|
|
2319
|
+
- Does the proposed data flow contradict existing patterns?
|
|
2320
|
+
- Do proposed error handling strategies conflict with established conventions?
|
|
2321
|
+
- Are there implicit assumptions that contradict documented decisions?
|
|
2322
|
+
|
|
2323
|
+
If contradictions exist, surface them explicitly: "This design proposes X, but the existing code does Y in [file]. Which should win?"
|
|
2324
|
+
|
|
2325
|
+
### 3. Specification Precision
|
|
2326
|
+
|
|
2327
|
+
Before finalizing each design section, apply this test:
|
|
2328
|
+
|
|
2329
|
+
> "Could two competent developers independently implement this section and produce compatible results?"
|
|
2330
|
+
|
|
2331
|
+
If no — the spec is too vague. Add:
|
|
2332
|
+
- Concrete examples (input → output)
|
|
2333
|
+
- Boundary conditions (what happens at 0, 1, MAX?)
|
|
2334
|
+
- Error cases (what fails, what's the recovery?)
|
|
2335
|
+
|
|
2336
|
+
### 4. Living Documentation
|
|
2337
|
+
|
|
2338
|
+
During the brainstorming session, when design decisions clarify existing ambiguity:
|
|
2339
|
+
- Note which existing docs/comments are now outdated
|
|
2340
|
+
- Include documentation updates as part of the design output (not a separate "docs task")
|
|
2341
|
+
- The design doc itself becomes the canonical reference — don't create knowledge that lives only in chat
|
|
2342
|
+
|
|
2303
2343
|
## Visual Presentation Support (Advanced Mode Only)
|
|
2304
2344
|
|
|
2305
2345
|
Use the \`present\` MCP tool for showing mockups, diagrams, and visual options during brainstorming. It is available as a tool, not a separate mode. Choosing this means you can present rich visual output when it helps; it does NOT mean every question should become visual.
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
const e=`aikit`,t={type:`stdio`,command:`node`,args:[`-e`,[`const{execFileSync:x}=require('child_process')`,`const{renameSync:m}=require('fs')`,`const{join:j}=require('path')`,`const d=process.platform==='win32'?j(process.env.LOCALAPPDATA||'','npm-cache','_npx'):j(require('os').homedir(),'.npm','_npx')`,`const s={stdio:'inherit',shell:true}`,`try{x('npx',['-y','@vpxa/aikit','serve'],s)}`,`catch(e){try{m(d,d+'_'+Date.now())}catch{}`,`x('npx',['-y','@vpxa/aikit','serve'],s)}`].join(`;`)]},n=[`aikit`,`brainstorming`,`multi-agents-development`,`session-handoff`,`requirements-clarity`,`lesson-learned`,`c4-architecture`,`adr-skill`,`present`,`frontend-design`,`react`,`typescript`,`docs`,`repo-access`],r=[`aikit-basic`,`aikit-advanced`,`_epilogue`],i={"chat.agentFilesLocations":{"~/.claude/agents":!1},"github.copilot.chat.copilotMemory.enabled":!0,"chat.customAgentInSubagent.enabled":!0,"chat.useNestedAgentsMdFiles":!0,"chat.useAgentSkills":!0,"github.copilot.chat.switchAgent.enabled":!0,"workbench.browser.enableChatTools":!0,"chat.mcp.apps.enabled":!0,"chat.instructionsFilesLocations":{"~/.copilot/instructions":!0,".github/instructions":!0}};export{i as a,n as i,t as n,e as r,r as t};
|