@tacuchi/agent-workflow-cli 7.3.1 → 8.0.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 (75) hide show
  1. package/dist/cli/tui/app.d.ts.map +1 -1
  2. package/dist/cli/tui/app.js +195 -52
  3. package/dist/cli/tui/app.js.map +1 -1
  4. package/dist/cli/tui/components/action-modal.d.ts +33 -0
  5. package/dist/cli/tui/components/action-modal.d.ts.map +1 -0
  6. package/dist/cli/tui/components/action-modal.js +41 -0
  7. package/dist/cli/tui/components/action-modal.js.map +1 -0
  8. package/dist/cli/tui/components/command-palette.d.ts +12 -33
  9. package/dist/cli/tui/components/command-palette.d.ts.map +1 -1
  10. package/dist/cli/tui/components/command-palette.js +17 -110
  11. package/dist/cli/tui/components/command-palette.js.map +1 -1
  12. package/dist/cli/tui/components/connections-grid.js +3 -3
  13. package/dist/cli/tui/components/connections-grid.js.map +1 -1
  14. package/dist/cli/tui/components/connections-table.js +1 -1
  15. package/dist/cli/tui/components/connections-table.js.map +1 -1
  16. package/dist/cli/tui/components/family-card.d.ts +10 -0
  17. package/dist/cli/tui/components/family-card.d.ts.map +1 -0
  18. package/dist/cli/tui/components/family-card.js +7 -0
  19. package/dist/cli/tui/components/family-card.js.map +1 -0
  20. package/dist/cli/tui/components/frame-box.d.ts +10 -0
  21. package/dist/cli/tui/components/frame-box.d.ts.map +1 -0
  22. package/dist/cli/tui/components/frame-box.js +9 -0
  23. package/dist/cli/tui/components/frame-box.js.map +1 -0
  24. package/dist/cli/tui/components/input-prompt.js +1 -1
  25. package/dist/cli/tui/components/input-prompt.js.map +1 -1
  26. package/dist/cli/tui/components/list-row.d.ts +22 -0
  27. package/dist/cli/tui/components/list-row.d.ts.map +1 -0
  28. package/dist/cli/tui/components/list-row.js +27 -0
  29. package/dist/cli/tui/components/list-row.js.map +1 -0
  30. package/dist/cli/tui/components/page-head.d.ts +14 -5
  31. package/dist/cli/tui/components/page-head.d.ts.map +1 -1
  32. package/dist/cli/tui/components/page-head.js +9 -5
  33. package/dist/cli/tui/components/page-head.js.map +1 -1
  34. package/dist/cli/tui/components/phase-card.d.ts +14 -0
  35. package/dist/cli/tui/components/phase-card.d.ts.map +1 -0
  36. package/dist/cli/tui/components/phase-card.js +8 -0
  37. package/dist/cli/tui/components/phase-card.js.map +1 -0
  38. package/dist/cli/tui/components/sectioned-menu.js +1 -1
  39. package/dist/cli/tui/components/sectioned-menu.js.map +1 -1
  40. package/dist/cli/tui/components/stat-tile.d.ts +14 -0
  41. package/dist/cli/tui/components/stat-tile.d.ts.map +1 -0
  42. package/dist/cli/tui/components/stat-tile.js +22 -0
  43. package/dist/cli/tui/components/stat-tile.js.map +1 -0
  44. package/dist/cli/tui/data/workflow-content.d.ts +16 -0
  45. package/dist/cli/tui/data/workflow-content.d.ts.map +1 -0
  46. package/dist/cli/tui/data/workflow-content.js +202 -0
  47. package/dist/cli/tui/data/workflow-content.js.map +1 -0
  48. package/dist/cli/tui/tabs/mcp-tab.d.ts +6 -11
  49. package/dist/cli/tui/tabs/mcp-tab.d.ts.map +1 -1
  50. package/dist/cli/tui/tabs/mcp-tab.js +107 -180
  51. package/dist/cli/tui/tabs/mcp-tab.js.map +1 -1
  52. package/dist/cli/tui/tabs/project-tab.d.ts.map +1 -1
  53. package/dist/cli/tui/tabs/project-tab.js +30 -29
  54. package/dist/cli/tui/tabs/project-tab.js.map +1 -1
  55. package/dist/cli/tui/tabs/skills-tab.d.ts +18 -8
  56. package/dist/cli/tui/tabs/skills-tab.d.ts.map +1 -1
  57. package/dist/cli/tui/tabs/skills-tab.js +175 -116
  58. package/dist/cli/tui/tabs/skills-tab.js.map +1 -1
  59. package/dist/cli/tui/tabs/status-tab.d.ts +11 -14
  60. package/dist/cli/tui/tabs/status-tab.d.ts.map +1 -1
  61. package/dist/cli/tui/tabs/status-tab.js +138 -34
  62. package/dist/cli/tui/tabs/status-tab.js.map +1 -1
  63. package/dist/cli/tui/tabs/workflow-tab.d.ts +7 -0
  64. package/dist/cli/tui/tabs/workflow-tab.d.ts.map +1 -0
  65. package/dist/cli/tui/tabs/workflow-tab.js +24 -0
  66. package/dist/cli/tui/tabs/workflow-tab.js.map +1 -0
  67. package/package.json +1 -1
  68. package/dist/cli/tui/tabs/plugins-tab.d.ts +0 -8
  69. package/dist/cli/tui/tabs/plugins-tab.d.ts.map +0 -1
  70. package/dist/cli/tui/tabs/plugins-tab.js +0 -635
  71. package/dist/cli/tui/tabs/plugins-tab.js.map +0 -1
  72. package/dist/cli/tui/tabs/update-tab.d.ts +0 -20
  73. package/dist/cli/tui/tabs/update-tab.d.ts.map +0 -1
  74. package/dist/cli/tui/tabs/update-tab.js +0 -83
  75. package/dist/cli/tui/tabs/update-tab.js.map +0 -1
@@ -0,0 +1,202 @@
1
+ // Datos del Workflow tab — hardcoded para evitar I/O en render.
2
+ // Sincronizado con (verificado en T4):
3
+ // - skills/agent-workflow/SKILL.md (familias de comandos)
4
+ // - skills/agent-workflow/commands/ (17 slash commands)
5
+ // - skills/agent-workflow/hooks/hooks.template.json (5 eventos)
6
+ // - aw --help (familias del CLI real)
7
+ //
8
+ // Puntos de drift: si se agregan/quitan slash commands en `commands/` o se
9
+ // renombran familias en SKILL.md, actualizar este archivo. Los totales se
10
+ // derivan con `.length` en runtime — NO hardcodear cantidades en strings.
11
+ export const WORKFLOW_CONTENT = {
12
+ overview: "Universal session-lifecycle harness — 11 families, 17 slash commands, 5 hooks.",
13
+ // 5-phase user-facing lifecycle.
14
+ phases: [
15
+ {
16
+ id: "discover",
17
+ n: 1,
18
+ title: "Discover",
19
+ desc: "Detect workspace state — sources, branches, mode, stack.",
20
+ commands: ["sources", "workspace-mode", "sessions"],
21
+ slash: "—",
22
+ hook: "—",
23
+ },
24
+ {
25
+ id: "start",
26
+ n: 2,
27
+ title: "Start",
28
+ desc: "Open a tracked session with OBJECTIVE + flow (core/dev/design).",
29
+ commands: ["session-create", "session-resume"],
30
+ slash: "/agent-workflow:session",
31
+ hook: "SessionStart",
32
+ },
33
+ {
34
+ id: "plan",
35
+ n: 3,
36
+ title: "Plan",
37
+ desc: "Choose planning depth + detect phase.",
38
+ commands: ["auto-plan-decide", "phase-detect", "specialty-choose"],
39
+ slash: "/agent-workflow:rules",
40
+ hook: "—",
41
+ },
42
+ {
43
+ id: "work",
44
+ n: 4,
45
+ title: "Work",
46
+ desc: "Persist progress in CHECKPOINT.md. Drift caught by topic-change.",
47
+ commands: ["checkpoint-write", "topic-change-check", "tasks-data"],
48
+ slash: "/agent-workflow:compact",
49
+ hook: "PreToolUse · PreCompact · PostCompact",
50
+ },
51
+ {
52
+ id: "close",
53
+ n: 5,
54
+ title: "Close / Graduate",
55
+ desc: "Close session + export artifacts. Handoff or release.",
56
+ commands: ["session-close", "release-data", "graduate"],
57
+ slash: "/agent-workflow:resume",
58
+ hook: "SessionEnd",
59
+ },
60
+ ],
61
+ // 11 command families verified against `aw --help`.
62
+ commandFamilies: [
63
+ {
64
+ id: "session",
65
+ title: "Session mgmt",
66
+ items: ["sessions", "session-create", "session-resume", "session-close", "session-artifacts"],
67
+ },
68
+ {
69
+ id: "objetivo",
70
+ title: "Objective / Tasks",
71
+ items: ["objetivo-data", "tasks-data", "decisiones-list", "dependencias-list"],
72
+ },
73
+ {
74
+ id: "checkpoint",
75
+ title: "Checkpoint",
76
+ items: [
77
+ "checkpoint-read",
78
+ "checkpoint-write",
79
+ "compress-checkpoint",
80
+ "auto-compact-on-close",
81
+ ],
82
+ },
83
+ {
84
+ id: "sources",
85
+ title: "Sources / branches",
86
+ items: ["sources", "attach-multiroot", "detach-multiroot", "check-branch"],
87
+ },
88
+ {
89
+ id: "orchestration",
90
+ title: "Orchestration",
91
+ items: [
92
+ "phase-detect",
93
+ "phase-next",
94
+ "workflows",
95
+ "workspace-mode",
96
+ "stack",
97
+ "skill-index",
98
+ "auto-plan-decide",
99
+ "topic-change-check",
100
+ "specialty-choose",
101
+ "resume-summary",
102
+ ],
103
+ },
104
+ {
105
+ id: "doctor",
106
+ title: "Doctor / Data",
107
+ items: [
108
+ "plugin-doctor",
109
+ "plugin-cache",
110
+ "history-data",
111
+ "history-update",
112
+ "release-data",
113
+ "code-scan",
114
+ "project-md-upsert",
115
+ "bootstrap-dsn",
116
+ "graduate",
117
+ "upgrade-hub-mode",
118
+ ],
119
+ },
120
+ {
121
+ id: "hooks",
122
+ title: "Hooks (cli)",
123
+ items: ["hook branch-check", "hook sql-mutation-guard", "hook git-commit-advisor"],
124
+ },
125
+ {
126
+ id: "mcp",
127
+ title: "MCP / DSN",
128
+ items: ["mcp dbhub", "mcp setup", "mcp remove", "mcp doctor", "mcp warp-status"],
129
+ },
130
+ {
131
+ id: "dev",
132
+ title: "Dev-only",
133
+ items: ["harness", "profiles", "logs", "next-number"],
134
+ },
135
+ {
136
+ id: "self",
137
+ title: "Self",
138
+ items: [
139
+ "self doctor",
140
+ "self install",
141
+ "self uninstall",
142
+ "self detect-hosts",
143
+ "self mcp",
144
+ "self bootstrap",
145
+ ],
146
+ },
147
+ {
148
+ id: "other",
149
+ title: "Other",
150
+ items: ["graduation-check", "hub-init", "visibility"],
151
+ },
152
+ ],
153
+ // 17 slash commands — `ls skills/agent-workflow/commands/*.md`.
154
+ slashCommands: [
155
+ "/agent-workflow:session",
156
+ "/agent-workflow:resume",
157
+ "/agent-workflow:compact",
158
+ "/agent-workflow:doctor",
159
+ "/agent-workflow:rules",
160
+ "/agent-workflow:migrate",
161
+ "/agent-workflow:project-init",
162
+ "/agent-workflow:hub-init",
163
+ "/agent-workflow:export-plan",
164
+ "/agent-workflow:export-arq",
165
+ "/agent-workflow:export-report",
166
+ "/agent-workflow:export-conclusions",
167
+ "/agent-workflow:export-scripts",
168
+ "/agent-workflow:export-requirement",
169
+ "/agent-workflow:export-qa-note",
170
+ "/agent-workflow:export-tech-note",
171
+ "/agent-workflow:export-tech-manuals",
172
+ ],
173
+ // 5 hooks de hooks.template.json — matcher real + qué disparan.
174
+ hooks: [
175
+ {
176
+ name: "SessionStart",
177
+ matcher: "startup|resume|clear",
178
+ fires: "Inject namespace into ~/.config/agent-workflow/namespace",
179
+ },
180
+ {
181
+ name: "PreToolUse",
182
+ matcher: "Edit|Write|MultiEdit · mcp__*__execute_sql · Bash",
183
+ fires: "branch-check · sql-mutation-guard · git-commit-advisor",
184
+ },
185
+ {
186
+ name: "SessionEnd",
187
+ matcher: "(any)",
188
+ fires: "agent-workflow auto-compact-on-close",
189
+ },
190
+ {
191
+ name: "PreCompact",
192
+ matcher: "(any)",
193
+ fires: "checkpoint-write — preserves OBJECTIVE before compacting",
194
+ },
195
+ {
196
+ name: "PostCompact",
197
+ matcher: "(any)",
198
+ fires: "resume-summary + prompt to reload CHECKPOINT.md",
199
+ },
200
+ ],
201
+ };
202
+ //# sourceMappingURL=workflow-content.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-content.js","sourceRoot":"","sources":["../../../../src/cli/tui/data/workflow-content.ts"],"names":[],"mappings":"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"}
@@ -9,19 +9,14 @@ export interface McpTabProps {
9
9
  }) => void;
10
10
  }
11
11
  /**
12
- * MCPTabsplit view con sub-modes.
12
+ * McpTablistado MCP single-column + ActionModal overlay + Add wizard inline.
13
13
  *
14
- * Lista: connections reales + row "+ Nueva conexión" al final.
15
- * Detail: estado único (instalado/no instalado/parcial) + acciones composite.
14
+ * Layout match con handoff (variant-palette.jsx MCPTab):
15
+ * PageHead con `+ add connection` action button FrameBox "connections" accent
16
+ * con ListRow por conexión → ActionModal overlay al ⏎ (Test / Edit / Remove).
16
17
  *
17
- * Modes:
18
- * - `list` cursor en lista (connections + new-row). ↑↓ navega · ⏎ entra
19
- * a `actions` (si conn) o a `new-name` (si new-row).
20
- * - `actions` — cursor en acciones contextuales del host activo. ↑↓ navega
21
- * · ⏎ aplica · esc vuelve.
22
- *
23
- * Install composite: encadena install-claude + install-codex + install-warp.
24
- * Si alguno falla, aborta el resto y reporta.
18
+ * Add/Edit wizard inline tras `a` shortcut o acción Edit. ConfirmModal para
19
+ * remove. Busy label durante ops.
25
20
  */
26
21
  export declare function McpTab({ ctx, isActive, onToast }: McpTabProps): import("react/jsx-runtime").JSX.Element;
27
22
  //# sourceMappingURL=mcp-tab.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-tab.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/tabs/mcp-tab.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAgCjD,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,UAAU,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE;QAAE,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;CACxF;AAYD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,MAAM,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,WAAW,2CA6U7D"}
1
+ {"version":3,"file":"mcp-tab.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/tabs/mcp-tab.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAoBjD,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,UAAU,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE;QAAE,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;CACxF;AAYD;;;;;;;;;GASG;AACH,wBAAgB,MAAM,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,WAAW,2CAiY7D"}