triples-agentic 2.4.0

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.
Files changed (77) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +326 -0
  3. package/docs/workflow.md +163 -0
  4. package/install.sh +98 -0
  5. package/package.json +54 -0
  6. package/src/agents/README.md +85 -0
  7. package/src/agents/jiwoo-prd.md +84 -0
  8. package/src/agents/kaede-backend.md +95 -0
  9. package/src/agents/kotone-flutter.md +100 -0
  10. package/src/agents/lynn-testcase.md +92 -0
  11. package/src/agents/nakyoung-tasks.md +89 -0
  12. package/src/agents/seoyeon.md +76 -0
  13. package/src/agents/shion-qa.md +89 -0
  14. package/src/agents/sohyun-ios.md +97 -0
  15. package/src/agents/yeonji-android.md +98 -0
  16. package/src/agents/yooyeon-rfc.md +82 -0
  17. package/src/agents/yubin-frontend.md +88 -0
  18. package/src/bin/setup.js +640 -0
  19. package/src/hooks/README.md +102 -0
  20. package/src/hooks/dangerous-commands.json +33 -0
  21. package/src/hooks/dangerous-commands.md +18 -0
  22. package/src/knowledge/README.md +129 -0
  23. package/src/knowledge/general/boy-scout-rule.md +13 -0
  24. package/src/knowledge/general/composition-over-inheritance.md +14 -0
  25. package/src/knowledge/general/dry.md +14 -0
  26. package/src/knowledge/general/fail-fast.md +13 -0
  27. package/src/knowledge/general/kiss.md +15 -0
  28. package/src/knowledge/general/least-surprise.md +13 -0
  29. package/src/knowledge/general/slap.md +29 -0
  30. package/src/knowledge/general/solid.md +44 -0
  31. package/src/knowledge/general/tdd.md +76 -0
  32. package/src/knowledge/general/yagni.md +12 -0
  33. package/src/knowledge/mobile/android/android-architecture.md +83 -0
  34. package/src/knowledge/mobile/android/android-platform.md +60 -0
  35. package/src/knowledge/mobile/android/kotlin-concurrency.md +75 -0
  36. package/src/knowledge/mobile/android/kotlin-core.md +88 -0
  37. package/src/knowledge/mobile/flutter/dart-async.md +93 -0
  38. package/src/knowledge/mobile/flutter/dart-core.md +97 -0
  39. package/src/knowledge/mobile/flutter/flutter-architecture.md +88 -0
  40. package/src/knowledge/mobile/flutter/flutter-platform.md +79 -0
  41. package/src/knowledge/mobile/ios/ios-architecture.md +88 -0
  42. package/src/knowledge/mobile/ios/ios-platform.md +66 -0
  43. package/src/knowledge/mobile/ios/swift-concurrency.md +99 -0
  44. package/src/knowledge/mobile/ios/swift-core.md +79 -0
  45. package/src/knowledge/planning/architecture-database.md +47 -0
  46. package/src/knowledge/planning/architecture-patterns.md +64 -0
  47. package/src/knowledge/planning/architecture-security.md +61 -0
  48. package/src/knowledge/planning/estimation.md +82 -0
  49. package/src/knowledge/planning/orchestration.md +70 -0
  50. package/src/knowledge/planning/prd-quality-gates.md +38 -0
  51. package/src/knowledge/planning/prd-writing.md +59 -0
  52. package/src/knowledge/planning/product-principles.md +48 -0
  53. package/src/knowledge/planning/product-prioritization.md +45 -0
  54. package/src/knowledge/planning/rfc-quality-gates.md +38 -0
  55. package/src/knowledge/planning/rfc-writing.md +81 -0
  56. package/src/knowledge/planning/task-decomposition.md +61 -0
  57. package/src/knowledge/planning/task-readiness.md +64 -0
  58. package/src/knowledge/quality/qa-execution.md +55 -0
  59. package/src/knowledge/quality/qa-reporting.md +71 -0
  60. package/src/knowledge/quality/test-case-quality.md +61 -0
  61. package/src/knowledge/quality/test-case-writing.md +76 -0
  62. package/src/knowledge/quality/testing-strategy.md +70 -0
  63. package/src/knowledge/quality/testing-types.md +84 -0
  64. package/src/knowledge/web/backend/api-design.md +74 -0
  65. package/src/knowledge/web/backend/api-security.md +54 -0
  66. package/src/knowledge/web/backend/backend-security.md +84 -0
  67. package/src/knowledge/web/backend/backend-structure.md +78 -0
  68. package/src/knowledge/web/frontend/frontend-components.md +49 -0
  69. package/src/knowledge/web/frontend/frontend-performance.md +41 -0
  70. package/src/knowledge/web/frontend/frontend-state.md +59 -0
  71. package/src/knowledge/web/frontend/web-accessibility.md +51 -0
  72. package/src/knowledge/web/frontend/web-performance.md +51 -0
  73. package/src/knowledge/web/frontend/web-security.md +59 -0
  74. package/src/templates/prd.md +109 -0
  75. package/src/templates/rfc.md +156 -0
  76. package/src/templates/task-breakdown.md +172 -0
  77. package/src/templates/test-case.md +157 -0
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 PAU Labs
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,326 @@
1
+ # triples-agentic
2
+
3
+ A platform-agnostic software engineering agent orchestrator, named after the 24-member K-pop group **TripleS**.
4
+
5
+ 11 specialized agents covering the full product-to-delivery lifecycle — from PRD to RFC, task breakdown, implementation across 5 platforms, test cases, and QA.
6
+
7
+ ---
8
+
9
+ ## Agent Roster
10
+
11
+ | S# | Agent | Persona | Role |
12
+ |----|-------|---------|------|
13
+ | S1 | **SeoYeon** | Engineering Manager | Main Orchestrator |
14
+ | S3 | **JiWoo** | Senior Product Manager | PRD Agent |
15
+ | S5 | **YooYeon** | Staff Engineer / Tech Lead | RFC Agent |
16
+ | S7 | **NaKyoung** | Technical Program Manager | Task Breakdown |
17
+ | S8 | **YuBin** | Principal Frontend Engineer | Frontend Web |
18
+ | S9 | **Kaede** | Principal Backend Engineer | Backend |
19
+ | S12 | **YeonJi** | Senior Android Engineer | Android Native (Kotlin) |
20
+ | S14 | **SoHyun** | Senior iOS Engineer | iOS Native (Swift) |
21
+ | S11 | **Kotone** | Senior Flutter Engineer | Flutter (Dart) |
22
+ | S17 | **Lynn** | QA Lead / Test Lead | Test Cases |
23
+ | S20 | **ShiOn** | Senior QA Automation Engineer | QA Execution |
24
+
25
+ ---
26
+
27
+ ## Workflow
28
+
29
+ ```
30
+ User → SeoYeon (EM)
31
+ → JiWoo (PRD) [human review loop]
32
+ → YooYeon (RFC) [human review loop]
33
+ → NaKyoung (Tasks) [human review loop]
34
+ → YuBin + Kaede + YeonJi + SoHyun + Kotone [parallel dev]
35
+ + Lynn (Test Cases) [human review loop]
36
+ → ShiOn (QA) → Go/No-Go
37
+ ```
38
+
39
+ Full Mermaid diagram: [docs/workflow.md](docs/workflow.md)
40
+
41
+ ---
42
+
43
+ ## Installation
44
+
45
+ ### Install via curl (recommended)
46
+
47
+ ```bash
48
+ curl -fsSL https://raw.githubusercontent.com/pauplayground007/triples-agentic/main/install.sh | bash
49
+ ```
50
+
51
+ Checks Node.js ≥ 18, then launches the interactive wizard.
52
+
53
+ Pass a platform directly to skip the wizard:
54
+
55
+ ```bash
56
+ # Claude Code — project-level
57
+ curl -fsSL https://raw.githubusercontent.com/pauplayground007/triples-agentic/main/install.sh | bash -s -- claude
58
+
59
+ # Claude Code — global (all projects on your machine)
60
+ curl -fsSL https://raw.githubusercontent.com/pauplayground007/triples-agentic/main/install.sh | bash -s -- claude --global
61
+
62
+ # Cursor AI — global
63
+ curl -fsSL https://raw.githubusercontent.com/pauplayground007/triples-agentic/main/install.sh | bash -s -- cursor --global
64
+
65
+ # All platforms at once
66
+ curl -fsSL https://raw.githubusercontent.com/pauplayground007/triples-agentic/main/install.sh | bash -s -- all
67
+
68
+ # Update all existing installations (auto-detects platforms and scope)
69
+ curl -fsSL https://raw.githubusercontent.com/pauplayground007/triples-agentic/main/install.sh | bash -s -- update
70
+ ```
71
+
72
+ ---
73
+
74
+ ### Interactive wizard
75
+
76
+ ```bash
77
+ npx triples-agentic
78
+ ```
79
+
80
+ ```
81
+ ╔══════════════════════════════════════════════════╗
82
+ ║ TripleS Agentic — Skill Plugin Setup ║
83
+ ║ Software Engineering Agent Orchestrator ║
84
+ ╚══════════════════════════════════════════════════╝
85
+
86
+ Which coding assistant are you installing for?
87
+ 1. Claude Code
88
+ 2. Cursor AI
89
+ 3. GitHub Copilot
90
+ 4. OpenAI Codex
91
+ 5. Windsurf
92
+ 6. All of the above
93
+
94
+ Install scope?
95
+ 1. Global — applies to all your projects (~/.claude/skills/)
96
+ 2. Project — current directory only (./.claude/skills/)
97
+ ```
98
+
99
+ ---
100
+
101
+ ### Direct install (non-interactive)
102
+
103
+ ```bash
104
+ # Project-level (run inside your project directory)
105
+ npx triples-agentic claude # Claude Code
106
+ npx triples-agentic cursor # Cursor AI
107
+ npx triples-agentic copilot # GitHub Copilot
108
+ npx triples-agentic codex # OpenAI Codex
109
+ npx triples-agentic windsurf # Windsurf
110
+ npx triples-agentic all # all platforms
111
+
112
+ # Global install
113
+ npx triples-agentic claude --global # → ~/.claude/skills/
114
+ npx triples-agentic cursor --global # → ~/.cursor/rules/
115
+ npx triples-agentic codex --global # → ~/.codex/AGENTS.md
116
+ npx triples-agentic windsurf --global # → ~/.codeium/windsurf/rules/
117
+
118
+ # Install into a specific directory
119
+ npx triples-agentic claude --target /path/to/project
120
+
121
+ # Update all existing installations (auto-detects platforms and scope)
122
+ npx triples-agentic update
123
+ ```
124
+
125
+ ---
126
+
127
+ ### Install as a global CLI
128
+
129
+ ```bash
130
+ npm install -g triples-agentic
131
+ triples-agentic # interactive wizard
132
+ triples-agentic claude # direct install for Claude Code
133
+ ```
134
+
135
+ ---
136
+
137
+ ### Files installed per platform
138
+
139
+ | Platform | Agent skills | Hook config |
140
+ |---|---|---|
141
+ | **Claude Code** | `.claude/skills/*.md` | `.claude/settings.json` (PreToolUse hook) |
142
+ | **Cursor AI** | `.cursor/rules/*.mdc` | `.cursor/rules/triples-safety.mdc` (always-applied rule) |
143
+ | **GitHub Copilot** | `.github/instructions/*.instructions.md` | `.github/instructions/triples-safety.instructions.md` |
144
+ | **OpenAI Codex** | `AGENTS.md` (project) / `~/.codex/AGENTS.md` (global) | `.codex/config.toml` / `~/.codex/config.toml` (PreToolUse hook) |
145
+ | **Windsurf** | `.windsurfrules` | `.windsurf/hooks.json` (pre_run_command hook) |
146
+
147
+ Global install paths:
148
+
149
+ | Platform | Skills | Hook config |
150
+ |---|---|---|
151
+ | Claude Code | `~/.claude/skills/` | `~/.claude/settings.json` |
152
+ | Cursor AI | `~/.cursor/rules/` | `~/.cursor/rules/triples-safety.mdc` |
153
+ | OpenAI Codex | `~/.codex/AGENTS.md` | `~/.codex/config.toml` |
154
+ | Windsurf | `~/.codeium/windsurf/rules/` | `~/.codeium/windsurf/hooks.json` |
155
+
156
+ ---
157
+
158
+ ## Safety Guardrails
159
+
160
+ Every install includes safety enforcement that blocks dangerous shell commands before they run.
161
+
162
+ ### How it works per platform
163
+
164
+ | Platform | Mechanism | Enforcement |
165
+ |---|---|---|
166
+ | **Claude Code** | `PreToolUse` hook in `.claude/settings.json` | Hard — harness blocks the command |
167
+ | **OpenAI Codex** | `PreToolUse` hook in `.codex/config.toml` | Hard — same engine as Claude Code |
168
+ | **Windsurf** | `pre_run_command` hook in `.windsurf/hooks.json` | Hard — exit code 2 blocks execution |
169
+ | **Cursor AI** | `alwaysApply: true` rule in `.cursor/rules/` | Soft — AI-level instruction |
170
+ | **GitHub Copilot** | `applyTo: "**"` instruction in `.github/instructions/` | Soft — AI-level instruction |
171
+
172
+ ### Blocked commands
173
+
174
+ - **Filesystem** — `rm -rf`, `rm -fr`, recursive force delete
175
+ - **Git destructive** — `git reset --hard`, `git checkout --`, `git restore .`
176
+ - **Git push force** — `git push --force`, `git push -f`
177
+ - **SQL destructive** — `DROP TABLE`, `DROP DATABASE`, `DELETE FROM <table>;`
178
+ - **Store publish** — `fastlane deliver/supply`, `gradlew publishBundle`, `xcrun altool`
179
+ - **Package publish** — `npm publish`, `npx ... publish`
180
+
181
+ Safe commands (`npm test`, `git push origin branch`, `flutter test`, etc.) pass through without interruption.
182
+
183
+ ### Adding or editing safety rules
184
+
185
+ All hook definitions live in [`src/hooks/`](src/hooks/):
186
+
187
+ - `dangerous-commands.json` — per-platform hook configs (Claude Code, Codex, Windsurf)
188
+ - `dangerous-commands.md` — text-based safety rules (Cursor, Copilot)
189
+
190
+ Edit these files and reinstall to update the rules across all platforms.
191
+
192
+ ---
193
+
194
+ ## Usage
195
+
196
+ ### Full pipeline (Claude Code)
197
+ ```
198
+ /seoyeon run
199
+ ```
200
+ SeoYeon walks you through the complete workflow and delegates to each agent.
201
+
202
+ ### Individual agents
203
+ ```
204
+ /jiwoo-prd Create, review, and finalize a PRD
205
+ /yooyeon-rfc Create, review, and finalize an RFC
206
+ /nakyoung-tasks Create task breakdown with story points and estimates
207
+ /yubin-frontend Implement frontend web features
208
+ /kaede-backend Implement backend API and services
209
+ /yeonji-android Implement Android (Kotlin + Compose) features
210
+ /sohyun-ios Implement iOS (Swift + SwiftUI) features
211
+ /kotone-flutter Implement Flutter (Dart) cross-platform features
212
+ /lynn-testcase Create, review, and finalize test cases
213
+ /shion-qa Execute tests and produce Go/No-Go report
214
+ /seoyeon status Check current run state
215
+ ```
216
+
217
+ ### With other coding assistants
218
+ Ask for the agent by name — e.g., "Act as JiWoo and create a PRD for [description]"
219
+
220
+ ---
221
+
222
+ ## Human-in-the-Loop Gates
223
+
224
+ JiWoo, YooYeon, NaKyoung, and Lynn all have built-in review loops:
225
+
226
+ 1. Agent creates artifact
227
+ 2. Agent reviews against quality gate checklist
228
+ 3. Agent evaluates: `READY` or `GAPS: [list]`
229
+ 4. On gaps: agent presents numbered list to user with specific questions
230
+ 5. User provides clarifications
231
+ 6. Agent updates and loops → repeat until `READY`
232
+
233
+ This ensures PRD, RFC, task breakdown, and test cases are implementation-ready before moving forward.
234
+
235
+ ---
236
+
237
+ ## Project Structure
238
+
239
+ ```
240
+ triples-agentic/
241
+ ├── install.sh # curl installer
242
+ ├── src/
243
+ │ ├── agents/ # 11 agent definitions (identity, persona, knowledge, tools, workflow)
244
+ │ │ ├── seoyeon.md
245
+ │ │ ├── jiwoo-prd.md
246
+ │ │ ├── yooyeon-rfc.md
247
+ │ │ ├── nakyoung-tasks.md
248
+ │ │ ├── yubin-frontend.md
249
+ │ │ ├── kaede-backend.md
250
+ │ │ ├── yeonji-android.md
251
+ │ │ ├── sohyun-ios.md
252
+ │ │ ├── kotone-flutter.md
253
+ │ │ ├── lynn-testcase.md
254
+ │ │ └── shion-qa.md
255
+ │ ├── hooks/ # Safety guardrail definitions (source of truth)
256
+ │ │ ├── dangerous-commands.json # per-platform hook configs
257
+ │ │ └── dangerous-commands.md # text-based safety rules
258
+ │ ├── knowledge/ # Domain expertise loaded by agents (knowledge-only .md files)
259
+ │ │ ├── general/ # coding principles shared by all developer agents
260
+ │ │ │ └── dry.md, kiss.md, yagni.md, solid.md, slap.md, tdd.md, …
261
+ │ │ ├── planning/ # SeoYeon, JiWoo, YooYeon, NaKyoung
262
+ │ │ │ └── orchestration.md, prd-writing.md, rfc-writing.md, task-decomposition.md, …
263
+ │ │ ├── web/
264
+ │ │ │ ├── frontend/ # YuBin
265
+ │ │ │ │ └── frontend-components.md, frontend-state.md, web-accessibility.md, …
266
+ │ │ │ └── backend/ # Kaede
267
+ │ │ │ └── backend-structure.md, api-design.md, api-security.md, …
268
+ │ │ ├── mobile/
269
+ │ │ │ ├── android/ # YeonJi
270
+ │ │ │ │ └── android-architecture.md, kotlin-core.md, kotlin-concurrency.md, …
271
+ │ │ │ ├── ios/ # SoHyun
272
+ │ │ │ │ └── ios-architecture.md, swift-core.md, swift-concurrency.md, …
273
+ │ │ │ └── flutter/ # Kotone
274
+ │ │ │ └── flutter-architecture.md, dart-core.md, dart-async.md, …
275
+ │ │ └── quality/ # Lynn, ShiOn
276
+ │ │ └── testing-strategy.md, test-case-writing.md, qa-execution.md, …
277
+ │ ├── templates/ # Output document templates
278
+ │ │ ├── prd.md # → workspace/PRD.md
279
+ │ │ ├── rfc.md # → workspace/RFC.md
280
+ │ │ ├── task-breakdown.md # → workspace/TASK_BREAKDOWN.md
281
+ │ │ └── test-case.md # → workspace/TEST_CASES.md
282
+ │ └── bin/
283
+ │ └── setup.js # Platform installer CLI
284
+ ├── docs/
285
+ │ └── workflow.md # Full workflow diagram + agent roster
286
+ └── CHANGELOG.md
287
+
288
+ ── Generated by installer (not committed to your repo) ────────────────────
289
+ your-project/
290
+ ├── .claude/
291
+ │ ├── skills/ # Claude Code agent + knowledge skills
292
+ │ └── settings.json # Claude Code PreToolUse safety hook
293
+ ├── .cursor/rules/ # Cursor AI agent rules + safety rule
294
+ ├── .github/instructions/ # Copilot agent instructions + safety instruction
295
+ ├── .codex/config.toml # Codex PreToolUse safety hook
296
+ ├── .windsurf/hooks.json # Windsurf pre_run_command safety hook
297
+ ├── AGENTS.md # Codex agent context
298
+ └── .windsurfrules # Windsurf agent rules
299
+ ```
300
+
301
+ ---
302
+
303
+ ### `agents/` — Behavioral definitions
304
+
305
+ Each agent file defines: identity, persona, knowledge references, tool guardrails, skills (workflows), and handoff signals. Domain content lives in `knowledge/` — agents only reference it.
306
+
307
+ Each agent includes a `## Tools` section that specifies which tools to use and which to avoid (e.g., planning agents never use `Bash`; QA agent never edits source files).
308
+
309
+ ### `hooks/` — Safety guardrails (source of truth)
310
+
311
+ Hook definitions live in `src/hooks/` as platform-agnostic source files. The installer reads them and generates the appropriate config for each platform:
312
+
313
+ - **`.json` files** carry per-platform hook configs under a `platforms` key (`claude`, `codex`, `windsurf`)
314
+ - **`.md` files** carry text-based safety rules for platforms without executable hooks (`cursor`, `copilot`)
315
+
316
+ ### `knowledge/` — Domain expertise
317
+
318
+ Pure reference `.md` files — no trigger logic, no skills framework. Agents declare which files to load via `<!-- knowledge: ... -->` metadata in their agent file. The knowledge files travel with the agents during install.
319
+
320
+ ---
321
+
322
+ ## Inspired by
323
+
324
+ [TripleS](https://triples.fandom.com/wiki/TripleS) — a 24-member multi-national K-pop group under MODHAUS, operating on a decentralized system where members rotate between subunits based on fan participation.
325
+
326
+ Just like TripleS subunits activate for specific projects, TripleS agents activate for specific phases of software delivery.
@@ -0,0 +1,163 @@
1
+ # TripleS Agent Orchestration Workflow
2
+
3
+ ## Agent Roster
4
+
5
+ | S# | Agent | Persona | Role | Slash Command |
6
+ |----|-------|---------|------|---------------|
7
+ | S1 | **SeoYeon** | Engineering Manager | Main Orchestrator | `/seoyeon` |
8
+ | S3 | **JiWoo** | Senior Product Manager | PRD Agent | `/jiwoo-prd` |
9
+ | S5 | **YooYeon** | Staff Engineer / Tech Lead | RFC Agent | `/yooyeon-rfc` |
10
+ | S7 | **NaKyoung** | Technical Program Manager | Task Breakdown | `/nakyoung-tasks` |
11
+ | S8 | **YuBin** | Principal Frontend Engineer | Frontend Web Dev | `/yubin-frontend` |
12
+ | S9 | **Kaede** | Principal Backend Engineer | Backend Dev | `/kaede-backend` |
13
+ | S12 | **YeonJi** | Senior Android Engineer | Android Native | `/yeonji-android` |
14
+ | S14 | **SoHyun** | Senior iOS Engineer | iOS Native | `/sohyun-ios` |
15
+ | S11 | **Kotone** | Senior Flutter Engineer | Flutter Dev | `/kotone-flutter` |
16
+ | S17 | **Lynn** | QA Lead / Test Lead | Test Case Agent | `/lynn-testcase` |
17
+ | S20 | **ShiOn** | Senior QA Automation Engineer | QA Execution | `/shion-qa` |
18
+
19
+ ---
20
+
21
+ ## Full Orchestration Workflow
22
+
23
+ ```mermaid
24
+ flowchart TD
25
+ User([👤 User Input]) --> SeoYeon
26
+
27
+ SeoYeon["🎯 SeoYeon\nEngineering Manager\n/seoyeon"]
28
+
29
+ SeoYeon -->|"Delegate: Create PRD"| JiWoo
30
+
31
+ subgraph PRD_LOOP["📋 PRD Phase — JiWoo (Senior PM)"]
32
+ JiWoo["JiWoo\n/jiwoo-prd"]
33
+ JiWoo --> PRDCreate["1. Create PRD\n(from prd_template.md)"]
34
+ PRDCreate --> PRDReview["2. Review PRD\n(quality checklist)"]
35
+ PRDReview --> PRDEval{3. Evaluate:\nAll quality gates\npassed?}
36
+ PRDEval -->|"❌ GAPS FOUND"| HumanPRD["🧑 Human Review\nJiWoo presents gap list\nUser adds missing context"]
37
+ HumanPRD -->|"4. Update PRD"| PRDReview
38
+ end
39
+
40
+ PRDEval -->|"✅ READY"| YooYeon
41
+
42
+ subgraph RFC_LOOP["⚙️ RFC Phase — YooYeon (Staff Engineer)"]
43
+ YooYeon["YooYeon\n/yooyeon-rfc"]
44
+ YooYeon --> RFCCreate["1. Create RFC\n(from rfc_template.md)"]
45
+ RFCCreate --> RFCReview["2. Review RFC\n(quality checklist)"]
46
+ RFCReview --> RFCEval{3. Evaluate:\nAll quality gates\npassed?}
47
+ RFCEval -->|"❌ GAPS FOUND"| HumanRFC["🧑 Human Review\nYooYeon presents\ntechnical gaps\nUser decides"]
48
+ HumanRFC -->|"4. Update RFC"| RFCReview
49
+ end
50
+
51
+ RFCEval -->|"✅ READY"| NaKyoung
52
+
53
+ subgraph TASK_LOOP["📊 Task Breakdown Phase — NaKyoung (TPM)"]
54
+ NaKyoung["NaKyoung\n/nakyoung-tasks"]
55
+ NaKyoung --> TaskCreate["1. Create Tasks\n(story points + estimates)"]
56
+ TaskCreate --> TaskReview["2. Review Tasks\n(readiness checklist)"]
57
+ TaskReview --> TaskEval{3. Evaluate:\nAll tasks clear\n& estimable?}
58
+ TaskEval -->|"❌ GAPS FOUND"| HumanTask["🧑 Human Review\nNaKyoung presents\nambiguous tasks\nUser clarifies"]
59
+ HumanTask -->|"4. Update Tasks"| TaskReview
60
+ end
61
+
62
+ TaskEval -->|"✅ READY"| DevPhase
63
+ TaskEval -->|"✅ READY"| TestPhase
64
+
65
+ subgraph DevPhase["⚡ Development Phase — Parallel"]
66
+ YuBin["🌐 YuBin\nPrincipal Frontend\n/yubin-frontend\n\nReact/Vue/Angular\nTailwind, TypeScript"]
67
+ Kaede["🖥️ Kaede\nPrincipal Backend\n/kaede-backend\n\nNode/Python/Go\nPostgreSQL, REST"]
68
+ YeonJi["🤖 YeonJi\nSenior Android\n/yeonji-android\n\nKotlin + Jetpack Compose\nMaterial Design 3"]
69
+ SoHyun["🍎 SoHyun\nSenior iOS\n/sohyun-ios\n\nSwift + SwiftUI\nApple HIG"]
70
+ Kotone["🦋 Kotone\nSenior Flutter\n/kotone-flutter\n\nDart + Flutter\nAndroid + iOS + Web"]
71
+ end
72
+
73
+ subgraph TestPhase["📝 Test Case Phase — Lynn (QA Lead)"]
74
+ Lynn["Lynn\n/lynn-testcase"]
75
+ Lynn --> TCCreate["1. Create Test Cases\n(from test_case_template.md)"]
76
+ TCCreate --> TCReview["2. Review Test Cases\n(quality checklist)"]
77
+ TCReview --> TCEval{3. Evaluate:\nAll PRD criteria\ncovered?}
78
+ TCEval -->|"❌ GAPS FOUND"| HumanTC["🧑 Human Review\nLynn presents\nmissing scenarios\nUser adds context"]
79
+ HumanTC -->|"4. Update Test Cases"| TCReview
80
+ end
81
+
82
+ TCEval -->|"✅ READY"| ShiOn
83
+ YuBin --> ShiOn
84
+ Kaede --> ShiOn
85
+ YeonJi --> ShiOn
86
+ SoHyun --> ShiOn
87
+ Kotone --> ShiOn
88
+
89
+ subgraph QA["🔍 QA Phase — ShiOn (Senior QA Automation)"]
90
+ ShiOn["ShiOn\n/shion-qa"]
91
+ ShiOn --> Smoke["Smoke Tests\n(P0 only)"]
92
+ Smoke --> SmokeGate{P0 pass?}
93
+ SmokeGate -->|"❌ Fail"| BlockRelease["🛑 Block Release\nReport P0 failures\nto SeoYeon"]
94
+ SmokeGate -->|"✅ Pass"| FullRun["Full Test Suite\nP1 → P2 → P3\n+ Exploratory"]
95
+ FullRun --> GoNoGo{Go/No-Go\nAssessment}
96
+ GoNoGo -->|"✅ GO"| Done
97
+ GoNoGo -->|"❌ NO-GO"| BlockRelease2["🛑 No-Go Report\nOpen defects listed\nFix & re-test"]
98
+ end
99
+
100
+ Done(["✅ Delivery Complete\nQA_REPORT.md\nDELIVERY_SUMMARY.md"])
101
+ ```
102
+
103
+ ---
104
+
105
+ ## Human-in-the-Loop Gates
106
+
107
+ Human review is required at four stages. Each gate follows the same pattern:
108
+
109
+ 1. Agent **creates** artifact using its template
110
+ 2. Agent **reviews** against its quality gate checklist
111
+ 3. Agent **evaluates**: all gates pass → `READY`; any fail → `GAPS: [numbered list]`
112
+ 4. Agent **presents** gaps to the human with specific questions
113
+ 5. Human **provides** clarifications
114
+ 6. Agent **updates** artifact and loops back to step 2
115
+ 7. Loop exits when `READY`
116
+
117
+ | Gate | Agent | Artifact |
118
+ |------|-------|---------|
119
+ | PRD Review | JiWoo (Senior PM) | `workspace/PRD.md` |
120
+ | RFC Review | YooYeon (Staff Engineer) | `workspace/RFC.md` |
121
+ | Task Breakdown Review | NaKyoung (TPM) | `workspace/TASK_BREAKDOWN.md` |
122
+ | Test Case Review | Lynn (QA Lead) | `workspace/TEST_CASES.md` |
123
+
124
+ ---
125
+
126
+ ## Workspace Artifacts
127
+
128
+ ```
129
+ workspace/
130
+ ├── PRD.md ← JiWoo
131
+ ├── RFC.md ← YooYeon
132
+ ├── TASK_BREAKDOWN.md ← NaKyoung
133
+ ├── TEST_CASES.md ← Lynn
134
+ ├── BUGS/
135
+ │ └── BUG-[ID].md ← ShiOn (one per defect)
136
+ ├── QA_REPORT.md ← ShiOn
137
+ └── DELIVERY_SUMMARY.md ← SeoYeon
138
+ ```
139
+
140
+ ---
141
+
142
+ ## Quick Start
143
+
144
+ ### Full pipeline
145
+ ```
146
+ /seoyeon run
147
+ ```
148
+ SeoYeon walks you through the entire workflow, delegating to each agent in sequence.
149
+
150
+ ### Individual agents
151
+ ```
152
+ /jiwoo-prd → Start or resume PRD creation
153
+ /yooyeon-rfc → Start or resume RFC from PRD
154
+ /nakyoung-tasks → Start or resume task breakdown
155
+ /yubin-frontend → Implement frontend web tasks
156
+ /kaede-backend → Implement backend tasks
157
+ /yeonji-android → Implement Android tasks
158
+ /sohyun-ios → Implement iOS tasks
159
+ /kotone-flutter → Implement Flutter tasks
160
+ /lynn-testcase → Start or resume test case creation
161
+ /shion-qa → Execute QA against test cases + dev output
162
+ /seoyeon status → Check current run state
163
+ ```
package/install.sh ADDED
@@ -0,0 +1,98 @@
1
+ #!/usr/bin/env bash
2
+ # TripleS Agentic — Installer
3
+ #
4
+ # Usage:
5
+ # curl -fsSL https://raw.githubusercontent.com/pauplayground007/triples-agentic/main/install.sh | bash
6
+ # curl -fsSL https://raw.githubusercontent.com/pauplayground007/triples-agentic/main/install.sh | bash -s -- claude
7
+ # curl -fsSL https://raw.githubusercontent.com/pauplayground007/triples-agentic/main/install.sh | bash -s -- claude --global
8
+ # curl -fsSL https://raw.githubusercontent.com/pauplayground007/triples-agentic/main/install.sh | bash -s -- all
9
+ # curl -fsSL https://raw.githubusercontent.com/pauplayground007/triples-agentic/main/install.sh | bash -s -- update
10
+
11
+ set -euo pipefail
12
+
13
+ # ── Terminal colours (disabled if no TTY or TERM is dumb) ────────────────────
14
+ if [ -t 1 ] && [ "${TERM:-}" != "dumb" ]; then
15
+ RED='\033[0;31m'; GREEN='\033[0;32m'; YELLOW='\033[1;33m'
16
+ CYAN='\033[0;36m'; BOLD='\033[1m'; NC='\033[0m'
17
+ else
18
+ RED=''; GREEN=''; YELLOW=''; CYAN=''; BOLD=''; NC=''
19
+ fi
20
+
21
+ MIN_NODE=18
22
+
23
+ # ── Helpers ──────────────────────────────────────────────────────────────────
24
+ err() { printf "${RED}✖ %s${NC}\n" "$*" >&2; exit 1; }
25
+ warn() { printf "${YELLOW}⚠ %s${NC}\n" "$*"; }
26
+ info() { printf "${CYAN}→${NC} %s\n" "$*"; }
27
+ success() { printf "${GREEN}✔${NC} %s\n" "$*"; }
28
+
29
+ # ── Banner ────────────────────────────────────────────────────────────────────
30
+ banner() {
31
+ printf "\n${BOLD}╔══════════════════════════════════════════════════╗${NC}\n"
32
+ printf "${BOLD}║ TripleS Agentic — Install ║${NC}\n"
33
+ printf "${BOLD}║ Software Engineering Agent Orchestrator ║${NC}\n"
34
+ printf "${BOLD}╚══════════════════════════════════════════════════╝${NC}\n\n"
35
+ }
36
+
37
+ # ── Prerequisite checks ───────────────────────────────────────────────────────
38
+ check_node() {
39
+ if ! command -v node &>/dev/null; then
40
+ err "Node.js is required but not installed.
41
+
42
+ Install it from : https://nodejs.org
43
+ macOS (Homebrew): brew install node
44
+ Linux (nvm) : curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.0/install.sh | bash"
45
+ fi
46
+
47
+ local major
48
+ major=$(node -e "process.stdout.write(String(process.versions.node.split('.')[0]))")
49
+ if [ "$major" -lt "$MIN_NODE" ]; then
50
+ err "Node.js v${MIN_NODE}+ required (found v${major}).
51
+ Update from: https://nodejs.org"
52
+ fi
53
+
54
+ success "Node.js $(node --version)"
55
+ }
56
+
57
+ check_npx() {
58
+ if ! command -v npx &>/dev/null; then
59
+ err "npx not found. Update npm: npm install -g npm@latest"
60
+ fi
61
+ success "npx $(npx --version)"
62
+ }
63
+
64
+ check_platform() {
65
+ case "$(uname -s)" in
66
+ Darwin|Linux) ;;
67
+ MINGW*|MSYS*|CYGWIN*)
68
+ warn "Windows detected — running via Git Bash / MSYS2."
69
+ warn "For full support use WSL2 or run: npx triples-agentic"
70
+ ;;
71
+ *)
72
+ warn "Unknown platform — proceeding anyway."
73
+ ;;
74
+ esac
75
+ }
76
+
77
+ # ── Main ──────────────────────────────────────────────────────────────────────
78
+ main() {
79
+ banner
80
+ check_platform
81
+ check_node
82
+ check_npx
83
+
84
+ printf "\n"
85
+ info "Launching triples-agentic setup…"
86
+ printf "\n"
87
+
88
+ # Forward every argument straight to the npm package:
89
+ # (no args) → interactive wizard
90
+ # claude → Claude Code, project-level
91
+ # claude --global → Claude Code, global
92
+ # cursor --global → Cursor AI, global
93
+ # all → all platforms, project-level
94
+ # update → update all existing installations
95
+ npx --yes github:pauplayground007/triples-agentic "$@"
96
+ }
97
+
98
+ main "$@"
package/package.json ADDED
@@ -0,0 +1,54 @@
1
+ {
2
+ "name": "triples-agentic",
3
+ "version": "2.4.0",
4
+ "description": "TripleS software engineering agent orchestrator — skill plugin for Claude Code, Cursor, Copilot, Codex, and Windsurf",
5
+ "type": "module",
6
+ "bin": {
7
+ "triples-agentic": "./src/bin/setup.js"
8
+ },
9
+ "files": [
10
+ "src/",
11
+ "docs/",
12
+ "README.md",
13
+ "install.sh"
14
+ ],
15
+ "scripts": {
16
+ "setup": "node src/bin/setup.js",
17
+ "setup:claude": "node src/bin/setup.js claude",
18
+ "setup:claude:global": "node src/bin/setup.js claude --global",
19
+ "setup:cursor": "node src/bin/setup.js cursor",
20
+ "setup:cursor:global": "node src/bin/setup.js cursor --global",
21
+ "setup:copilot": "node src/bin/setup.js copilot",
22
+ "setup:codex": "node src/bin/setup.js codex",
23
+ "setup:windsurf": "node src/bin/setup.js windsurf",
24
+ "setup:windsurf:global": "node src/bin/setup.js windsurf --global",
25
+ "setup:all": "node src/bin/setup.js all"
26
+ },
27
+ "keywords": [
28
+ "triples-agentic",
29
+ "software-engineering",
30
+ "agent",
31
+ "orchestrator",
32
+ "skill",
33
+ "plugin",
34
+ "claude",
35
+ "copilot",
36
+ "cursor",
37
+ "codex",
38
+ "windsurf",
39
+ "prd",
40
+ "rfc"
41
+ ],
42
+ "engines": {
43
+ "node": ">=18.0.0"
44
+ },
45
+ "license": "MIT",
46
+ "repository": {
47
+ "type": "git",
48
+ "url": "git+https://github.com/pauplayground007/triples-agentic.git"
49
+ },
50
+ "bugs": {
51
+ "url": "https://github.com/pauplayground007/triples-agentic/issues"
52
+ },
53
+ "homepage": "https://github.com/pauplayground007/triples-agentic#readme"
54
+ }