@theproductguy/create-mission-control 1.0.17 → 1.0.25

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 (51) hide show
  1. package/package.json +1 -1
  2. package/src/template/agent-os/WORKFLOW.md +139 -0
  3. package/src/template/agent-os/commands/adapt/adapt.md +189 -0
  4. package/src/template/agent-os/commands/animate/animate.md +184 -0
  5. package/src/template/agent-os/commands/audit/audit.md +123 -0
  6. package/src/template/agent-os/commands/bolder/bolder.md +126 -0
  7. package/src/template/agent-os/commands/clarify/clarify.md +173 -0
  8. package/src/template/agent-os/commands/colorize/colorize.md +152 -0
  9. package/src/template/agent-os/commands/critique/critique.md +112 -0
  10. package/src/template/agent-os/commands/delight/delight.md +311 -0
  11. package/src/template/agent-os/commands/design-screen/design-screen.md +5 -0
  12. package/src/template/agent-os/commands/design-shell/design-shell.md +5 -0
  13. package/src/template/agent-os/commands/design-tokens/design-tokens.md +5 -0
  14. package/src/template/agent-os/commands/extract/extract.md +88 -0
  15. package/src/template/agent-os/commands/harden/harden.md +351 -0
  16. package/src/template/agent-os/commands/impeccable/impeccable.md +163 -0
  17. package/src/template/agent-os/commands/normalize/normalize.md +61 -0
  18. package/src/template/agent-os/commands/onboard/onboard.md +236 -0
  19. package/src/template/agent-os/commands/optimize/optimize.md +262 -0
  20. package/src/template/agent-os/commands/plan-product/3-create-roadmap.md +7 -3
  21. package/src/template/agent-os/commands/polish/polish.md +196 -0
  22. package/src/template/agent-os/commands/quieter/quieter.md +112 -0
  23. package/src/template/agent-os/commands/simplify/simplify.md +131 -0
  24. package/src/template/agent-os/commands/teach-impeccable/teach-impeccable.md +67 -0
  25. package/src/template/control-center/backend/index.js +1 -1
  26. package/src/template/control-center/frontend/src/App.tsx +85 -839
  27. package/src/template/control-center/frontend/src/components/DesignOSOverlay.tsx +38 -0
  28. package/src/template/control-center/frontend/src/components/Guidance.tsx +56 -0
  29. package/src/template/control-center/frontend/src/components/NextStepCard.tsx +115 -0
  30. package/src/template/control-center/frontend/src/components/PromptButton.tsx +43 -0
  31. package/src/template/control-center/frontend/src/components/StatusItem.tsx +38 -0
  32. package/src/template/control-center/frontend/src/components/modals/CreateSpecModal.tsx +73 -0
  33. package/src/template/control-center/frontend/src/components/modals/DeleteSpecModal.tsx +42 -0
  34. package/src/template/control-center/frontend/src/components/modals/FileEditorModal.tsx +87 -0
  35. package/src/template/control-center/frontend/src/components/modals/SettingsModal.tsx +46 -0
  36. package/src/template/control-center/frontend/src/components/ui/ToastContext.tsx +1 -1
  37. package/src/template/control-center/frontend/src/contexts/IdeContext.tsx +6 -0
  38. package/src/template/control-center/frontend/src/hooks/useFileEditor.ts +42 -0
  39. package/src/template/control-center/frontend/src/hooks/useProjectState.ts +45 -0
  40. package/src/template/control-center/frontend/src/index.css +26 -0
  41. package/src/template/control-center/frontend/src/types.ts +65 -0
  42. package/src/template/control-center/frontend/tailwind.config.js +15 -3
  43. package/src/template/control-center/product/design-system/QA/audit-report.md +34 -0
  44. package/src/template/control-center/product/mission.md +38 -0
  45. package/src/template/control-center/product/roadmap.md +10 -0
  46. package/src/template/design-system/src/lib/product-loader.ts +6 -0
  47. package/src/template/package-lock.json +2756 -134
  48. package/src/template/package.json +2 -2
  49. package/src/template/agent-os-ui/_package.json +0 -54
  50. package/src/template/agent-os-ui/package.json +0 -54
  51. package/src/template/control-center/frontend/src/components/ThemeToggle.tsx +0 -64
@@ -1,3 +1,4 @@
1
+ @import url('https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700&display=swap');
1
2
  @tailwind base;
2
3
  @tailwind components;
3
4
  @tailwind utilities;
@@ -6,6 +7,7 @@
6
7
  /*
7
8
  Control Center Theme (Aligned with Design OS)
8
9
  Warm Neutrals / Stone Palette
10
+ Font: Outfit (Modern, Premium)
9
11
  */
10
12
 
11
13
 
@@ -50,6 +52,18 @@
50
52
  /* stone-500 */
51
53
  --chart-1: oklch(0.532 0.157 131.589);
52
54
  /* lime-600 */
55
+ --success: oklch(0.627 0.194 149.214);
56
+ /* emerald-500 */
57
+ --success-foreground: oklch(0.985 0.001 106.424);
58
+ /* stone-50 */
59
+ --warning: oklch(0.704 0.191 47.567);
60
+ /* amber-500 */
61
+ --warning-foreground: oklch(0.985 0.001 106.424);
62
+ /* stone-50 */
63
+ --info: oklch(0.612 0.203 252.339);
64
+ /* blue-500 */
65
+ --info-foreground: oklch(0.985 0.001 106.424);
66
+ /* stone-50 */
53
67
  /* Sidebar */
54
68
  --sidebar: oklch(0.985 0.001 106.424);
55
69
  /* stone-50 */
@@ -109,6 +123,18 @@
109
123
  /* stone-500 */
110
124
  --chart-1: oklch(0.648 0.2 131.684);
111
125
  /* lime-500 */
126
+ --success: oklch(0.627 0.194 149.214);
127
+ /* emerald-500 */
128
+ --success-foreground: oklch(0.216 0.006 56.043);
129
+ /* stone-900 */
130
+ --warning: oklch(0.704 0.191 47.567);
131
+ /* amber-500 */
132
+ --warning-foreground: oklch(0.216 0.006 56.043);
133
+ /* stone-900 */
134
+ --info: oklch(0.612 0.203 252.339);
135
+ /* blue-500 */
136
+ --info-foreground: oklch(0.216 0.006 56.043);
137
+ /* stone-900 */
112
138
  /* Sidebar */
113
139
  --sidebar: oklch(0.268 0.007 34.298);
114
140
  /* stone-800 */
@@ -0,0 +1,65 @@
1
+
2
+ export interface Status {
3
+ exists: boolean;
4
+ completed: number;
5
+ total: number;
6
+ nextItem?: string | null;
7
+ items?: { name: string; completed: boolean }[];
8
+ isBoilerplate?: boolean;
9
+ }
10
+
11
+ export interface ProductStatus {
12
+ mission: Status;
13
+ roadmap: Status;
14
+ techStack: Status;
15
+ }
16
+
17
+ export interface Spec {
18
+ name: string;
19
+ spec: Status;
20
+ tasks: Status;
21
+ }
22
+
23
+ export interface ProjectState {
24
+ product: ProductStatus;
25
+ design: {
26
+ exists: boolean;
27
+ initialized: boolean;
28
+ tokens: boolean;
29
+ shell: boolean;
30
+ exported: boolean;
31
+ exportPrompts?: {
32
+ oneShot: boolean;
33
+ section: boolean;
34
+ };
35
+ qa?: {
36
+ audit: boolean;
37
+ polish: boolean;
38
+ };
39
+ };
40
+ implementation: {
41
+ scaffolded: boolean;
42
+ tests?: {
43
+ count: number;
44
+ hasTests: boolean;
45
+ };
46
+ coverage?: number | null;
47
+ specs?: {
48
+ total: number;
49
+ completed: number;
50
+ };
51
+ git?: {
52
+ initialized: boolean;
53
+ branch: string | null;
54
+ uncommitted: number;
55
+ lastCommit: string | null;
56
+ };
57
+ };
58
+ specs: Spec[];
59
+ services?: {
60
+ api: boolean;
61
+ design: boolean;
62
+ app: boolean;
63
+ };
64
+ projectRoot: string;
65
+ }
@@ -9,9 +9,9 @@ export default {
9
9
  theme: {
10
10
  extend: {
11
11
  fontFamily: {
12
- display: ["DM Sans", "system-ui", "sans-serif"],
13
- body: ["DM Sans", "system-ui", "sans-serif"],
14
- sans: ["DM Sans", "system-ui", "sans-serif"],
12
+ display: ["Outfit", "system-ui", "sans-serif"],
13
+ body: ["Outfit", "system-ui", "sans-serif"],
14
+ sans: ["Outfit", "system-ui", "sans-serif"],
15
15
  mono: ["IBM Plex Mono", "ui-monospace", "monospace"]
16
16
  },
17
17
  borderRadius: {
@@ -51,6 +51,18 @@ export default {
51
51
  DEFAULT: 'var(--destructive)',
52
52
  foreground: 'var(--destructive-foreground)'
53
53
  },
54
+ success: {
55
+ DEFAULT: 'var(--success)',
56
+ foreground: 'var(--success-foreground)'
57
+ },
58
+ warning: {
59
+ DEFAULT: 'var(--warning)',
60
+ foreground: 'var(--warning-foreground)'
61
+ },
62
+ info: {
63
+ DEFAULT: 'var(--info)',
64
+ foreground: 'var(--info-foreground)'
65
+ },
54
66
  border: 'var(--border)',
55
67
  input: 'var(--input)',
56
68
  ring: 'var(--ring)',
@@ -0,0 +1,34 @@
1
+ # Audit Report: Action Centre
2
+
3
+ ## Anti-Patterns Verdict
4
+ **FAIL**. The codebase exhibits "Monolithic Spaghetti" and "Generic Utility" anti-patterns. While it functionality works, the structure is brittle and the aesthetic is generic "Dashboard UI".
5
+
6
+ ## Executive Summary
7
+ - **Total Issues**: 4 key issues
8
+ - **Critical**: 1 (Monolithic Architecture)
9
+ - **High**: 2 (Mixed Tokens, Inline Components)
10
+ - **Overall Score**: C-
11
+ - **Next Steps**: Refactor `App.tsx`, Normalize Tokens.
12
+
13
+ ## Detailed Findings
14
+
15
+ ### Critical Issues
16
+ 1. **Monolithic `App.tsx`**: The file is 1000+ lines, containing state (`ProjectState`), API logic (`fetchStatus`), and UI components (`Guidance`, `StatusItem`). This violates clean code principles and makes "polishing" impossible.
17
+ - *Recommendation*: Extract `StatusItem`, `Guidance`, `NextStepCard` to `components/`. Move state to `hooks/useProjectState`.
18
+
19
+ ### High Severity
20
+ 2. **Hardcoded Colors**: `App.tsx` contains literals like `bg-emerald-50`, `text-red-500`.
21
+ - *Impact*: Inconsistent theming. If we change the "Success" token, these won't update.
22
+ - *Fix*: Use `text-destructive`, `bg-success-subtle` (need to define semantic tokens).
23
+
24
+ 3. **Inline Components**: `StatusItem` and `PromptButton` are defined inside the same file as `App`.
25
+ - *Impact*: Low reusability, hard to read.
26
+
27
+ ### Medium Severity
28
+ 4. **Generic Typography**: `App.tsx` relies on default `font-sans`.
29
+ - *Fix*: Adopt a distinct font stack in `index.css` (e.g., `Outfit` or `Space Grotesk` for headers) to match "Impeccable" standards.
30
+
31
+ ## Recommendations
32
+ 1. **Refactor**: Break `App.tsx` into `components/` and `hooks/`.
33
+ 2. **Normalize**: Replace all `red-500`, `emerald-50` with semantic variables (`--destructive`, `--success`).
34
+ 3. **Polish**: Introduce micro-interactions for the "Action" buttons.
@@ -0,0 +1,38 @@
1
+ # Product Mission
2
+
3
+ ## Pitch
4
+ **Action Centre** is the central nervous system for Agent OS that helps **Developers** manage the complexity of autonomous development by providing **unified orchestration of projects, agents, and design systems**.
5
+
6
+ ## Users
7
+
8
+ ### Primary Customers
9
+ - **The Creator**: A developer building multiple products simultaneously using Agent OS.
10
+
11
+ ### User Personas
12
+ **The Product Guy/Gal** (25-45)
13
+ - **Role:** Full-stack Developer / Entrepreneur
14
+ - **Context:** Juggling strategy, design, and code across multiple potential products.
15
+ - **Pain Points:** Context switching, losing track of agent states, fragmented workflows.
16
+ - **Goals:** High-velocity shipping, widely "Impeccable" design quality, seamless agent collaboration.
17
+
18
+ ## The Problem
19
+
20
+ ### Fragmentation of Control
21
+ Managing autonomous agents, design systems (`design-os`), and product strategy (`mission.md`) via scattered CLI commands is inefficient and opaque. Users lack a single "pane of glass" to see the health and state of their Agent OS instance.
22
+
23
+ **Our Solution:** A unified web-based **Action Centre** (running on port 5401) that visualizes the entire ecosystem, allowing direct manipulation of agent capabilities and design standards.
24
+
25
+ ## Differentiators
26
+
27
+ ### "Impeccable" Native
28
+ Unlike generic admin dashboards, Action Centre is built with and for the **Impeccable Design System**, embodying the very aesthetics and quality standards it enforces. It is not just a tool; it is a reference implementation.
29
+
30
+ ## Key Features
31
+
32
+ ### Core Features
33
+ - **Project Dashboard:** Visual overview of all active projects, their "Mission" status, and current phase.
34
+ - **Agent Orchestration:** Interface to view, install, and configure Agent Capabilities (Skills, Tools).
35
+ - **Design System Bridge:** Direct access to Design OS status, Token management, and Audit reports.
36
+
37
+ ### Advanced Features
38
+ - **Workflow Visualizer:** Real-time view of the "Master Workflow" progress (Strategy -> Design -> Build).
@@ -0,0 +1,10 @@
1
+ # Product Roadmap
2
+
3
+ 1. [ ] **Refactor Monolithic App** — Extract `Guidance`, `StatusItem`, and `PromptButton` into dedicated components and move logic to `useProjectState`; ensure `App.tsx` is < 200 lines. `[M]`
4
+ 2. [ ] **Normalize Design Tokens** — Replace all hardcoded Tailwind colors (e.g., `emerald-50`, `red-500`) with semantic CSS variables (`--success`, `--destructive`) in `index.css` and components. `[S]`
5
+ 3. [ ] **Enhance Typography** — Introduce a distinct font stack (e.g., Outfit/Inter pair) and update `index.css` to remove generic "system-ui" failover. `[S]`
6
+ 4. [ ] **Add "Impeccable" Polish** — Implementation of micro-interactions for buttons (hover lift, active scale) and list items (staggered entrance). `[S]`
7
+
8
+ > Notes
9
+ > - Priority is refactoring to enable easier design iteration.
10
+ > - "Polish" phase depends on "Normalize" being complete.
@@ -52,6 +52,9 @@ function slugify(str: string): string {
52
52
  export function parseProductOverview(md: string): ProductOverview | null {
53
53
  if (!md || !md.trim()) return null
54
54
 
55
+ // Normalize line endings for Windows compatibility
56
+ md = md.replace(/\r\n/g, '\n')
57
+
55
58
  try {
56
59
  // Extract product name from first # heading
57
60
  const nameMatch = md.match(/^#\s+(.+)$/m)
@@ -117,6 +120,9 @@ export function parseProductOverview(md: string): ProductOverview | null {
117
120
  export function parseProductRoadmap(md: string): ProductRoadmap | null {
118
121
  if (!md || !md.trim()) return null
119
122
 
123
+ // Normalize line endings for Windows compatibility
124
+ md = md.replace(/\r\n/g, '\n')
125
+
120
126
  try {
121
127
  const sections: Section[] = []
122
128