open-multi-agent-kit 0.78.8 → 0.79.3
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/AGENTS.md +131 -2
- package/CHANGELOG.md +32 -0
- package/CLAUDE.md +105 -3
- package/DESIGN.md +141 -117
- package/MATURITY.md +7 -12
- package/README.md +66 -347
- package/ROADMAP.md +33 -47
- package/dist/adapters/kimi/runner.js +2 -2
- package/dist/brand/theme.js +2 -2
- package/dist/cli/register-basic-commands.js +3 -2
- package/dist/cli/register-mcp-dag-cron-screenshot-commands.js +1 -1
- package/dist/cli/root.d.ts +1 -0
- package/dist/cli/root.js +2 -0
- package/dist/cli/runtime/command-bus.js +14 -1
- package/dist/cli/theme/terminal-capability.js +1 -1
- package/dist/cli/theme/theme-registry.js +90 -2
- package/dist/cli/ui/event.d.ts +1 -0
- package/dist/cli/ui/neon-grid-renderer.d.ts +8 -0
- package/dist/cli/ui/neon-grid-renderer.js +84 -14
- package/dist/cli/ui/plain-renderer.js +3 -1
- package/dist/cli/ui/system24-renderer.js +3 -1
- package/dist/cli/v2/chat-repl.d.ts +2 -1
- package/dist/cli/v2/chat-repl.js +58 -2
- package/dist/cli/v2/cli-v2-skeleton.js +7 -4
- package/dist/cli/v2/interactive-prompt.js +4 -3
- package/dist/commands/auth.js +2 -0
- package/dist/commands/chat/native-root-loop.d.ts +1 -0
- package/dist/commands/chat/native-root-loop.js +162 -13
- package/dist/commands/chat/runtime.js +9 -0
- package/dist/commands/chat/slash/commands/routing.js +31 -1
- package/dist/commands/chat/utils.js +3 -1
- package/dist/commands/cockpit/render.js +2 -1
- package/dist/commands/doctor/checks.js +2 -2
- package/dist/commands/init/core.js +2 -2
- package/dist/commands/init.js +2 -2
- package/dist/commands/mcp/config.js +38 -16
- package/dist/commands/mcp/doctor.js +7 -8
- package/dist/commands/mcp/list.js +4 -3
- package/dist/commands/mcp/shared.d.ts +4 -1
- package/dist/commands/mcp/shared.js +21 -3
- package/dist/commands/mcp/test.js +13 -12
- package/dist/commands/model.js +4 -0
- package/dist/commands/provider.js +5 -1
- package/dist/commands/version.d.ts +1 -0
- package/dist/commands/version.js +18 -0
- package/dist/contracts/command.d.ts +25 -0
- package/dist/contracts/command.js +1 -0
- package/dist/contracts/evidence-bundle.d.ts +52 -0
- package/dist/contracts/evidence-bundle.js +1 -0
- package/dist/contracts/index.d.ts +2 -0
- package/dist/contracts/index.js +2 -0
- package/dist/contracts/web-bridge.d.ts +1 -1
- package/dist/contracts/web-bridge.js +1 -1
- package/dist/evidence/bundle-validator.d.ts +7 -0
- package/dist/evidence/bundle-validator.js +103 -0
- package/dist/evidence/index.d.ts +5 -0
- package/dist/evidence/index.js +2 -0
- package/dist/evidence/proof-trust.js +2 -10
- package/dist/evidence/trust-calibration.d.ts +25 -0
- package/dist/evidence/trust-calibration.js +151 -0
- package/dist/mcp/omk-project-server.js +1 -1
- package/dist/metrics/provenance-ratio.d.ts +16 -0
- package/dist/metrics/provenance-ratio.js +33 -0
- package/dist/orchestration/dag.d.ts +17 -0
- package/dist/orchestration/ensemble-decision.d.ts +2 -0
- package/dist/orchestration/ensemble-decision.js +4 -0
- package/dist/orchestration/hedge-persona-weights.d.ts +25 -0
- package/dist/orchestration/hedge-persona-weights.js +43 -0
- package/dist/orchestration/parallel-ui.d.ts +1 -0
- package/dist/orchestration/parallel-ui.js +12 -3
- package/dist/orchestration/route-calibration.d.ts +27 -0
- package/dist/orchestration/route-calibration.js +123 -0
- package/dist/orchestration/routing/mcp-config.js +5 -1
- package/dist/orchestration/routing/types.d.ts +21 -0
- package/dist/orchestration/routing.d.ts +10 -0
- package/dist/orchestration/routing.js +89 -3
- package/dist/providers/model-registry.d.ts +2 -1
- package/dist/providers/model-registry.js +76 -4
- package/dist/providers/provider-runtime.js +9 -1
- package/dist/providers/thinking-levels.js +2 -0
- package/dist/providers/types.d.ts +1 -1
- package/dist/runtime/glm-api-runtime.d.ts +4 -0
- package/dist/runtime/glm-api-runtime.js +15 -0
- package/dist/runtime/index.d.ts +1 -0
- package/dist/runtime/index.js +1 -0
- package/dist/runtime/kimi-api-runtime.d.ts +6 -1
- package/dist/runtime/kimi-api-runtime.js +10 -4
- package/dist/runtime/recovery-artifact-store.d.ts +39 -0
- package/dist/runtime/recovery-artifact-store.js +111 -0
- package/dist/runtime/runtime-backed-task-runner.js +10 -0
- package/dist/runtime/runtime-bootstrap.js +17 -1
- package/dist/runtime/slash-commands.js +38 -5
- package/dist/schema/command.schema.d.ts +121 -0
- package/dist/schema/command.schema.js +25 -0
- package/dist/schema/envelope.schema.d.ts +2 -2
- package/dist/schema/evidence-bundle.schema.d.ts +196 -0
- package/dist/schema/evidence-bundle.schema.js +38 -0
- package/dist/schema/index.d.ts +2 -0
- package/dist/schema/index.js +2 -0
- package/dist/schema/proof-bundle.schema.d.ts +2 -2
- package/dist/theme/external-theme-adapters.d.ts +27 -0
- package/dist/theme/external-theme-adapters.js +52 -0
- package/dist/theme/library-effects.d.ts +12 -0
- package/dist/theme/library-effects.js +47 -0
- package/dist/theme/parallel.js +3 -2
- package/dist/tui/terminal-frame-renderer.d.ts +9 -1
- package/dist/tui/terminal-frame-renderer.js +77 -7
- package/dist/util/chat-cockpit.d.ts +3 -1
- package/dist/util/chat-cockpit.js +44 -5
- package/dist/util/command-envelope.d.ts +19 -0
- package/dist/util/command-envelope.js +31 -0
- package/dist/util/events-logger.d.ts +1 -1
- package/dist/util/events-logger.js +23 -16
- package/dist/util/fs/mcp-diagnose.js +2 -1
- package/dist/util/fs/mcp-runtime-config.js +14 -2
- package/dist/util/i18n.js +2 -2
- package/dist/util/screenshot-store.d.ts +7 -0
- package/dist/util/screenshot-store.js +30 -0
- package/dist/util/terminal-kit-bridge.d.ts +24 -0
- package/dist/util/terminal-kit-bridge.js +60 -0
- package/dist/util/terminal-owner.d.ts +1 -0
- package/dist/util/terminal-owner.js +31 -0
- package/dist/version.d.ts +3 -1
- package/dist/version.js +4 -0
- package/docs/2026-05-18-project-direction.md +1 -1
- package/docs/2026-06-14/critical-issues.md +19 -0
- package/docs/2026-06-14/improvements.md +15 -0
- package/docs/2026-06-14/init-checklist.md +25 -0
- package/docs/2026-06-14/plan.md +20 -0
- package/docs/2026-06-15/critical-issues.md +19 -0
- package/docs/2026-06-15/improvements.md +15 -0
- package/docs/2026-06-15/init-checklist.md +25 -0
- package/docs/2026-06-15/plan.md +20 -0
- package/docs/claims.md +85 -0
- package/docs/comparisons/omk-vs-claude-code.md +31 -0
- package/docs/comparisons/omk-vs-codex.md +33 -0
- package/docs/comparisons/omk-vs-mcp-agent.md +33 -0
- package/docs/comparisons/omk-vs-opencode.md +32 -0
- package/docs/decision-layer-calibration.md +20 -0
- package/docs/geo-eval-prompts.md +53 -0
- package/docs/getting-started.md +3 -31
- package/docs/headroom-omk-setup-guide.md +2 -2
- package/docs/integrations/adaptorch.md +46 -0
- package/docs/native-root-runtime-algorithms.md +2 -303
- package/docs/native-root-runtime-hardening.md +1 -1
- package/docs/provider-maturity.md +1 -1
- package/docs/use-cases/evidence-gated-coding-agents.md +52 -0
- package/docs/use-cases/no-kimi-mode.md +38 -0
- package/docs/use-cases/provider-routing-for-ai-coding.md +36 -0
- package/docs/use-cases/replayable-agent-runs.md +40 -0
- package/docs/use-cases/scoped-mcp-for-coding-agents.md +34 -0
- package/docs/versioning.md +9 -3
- package/docs/what-is-omk.md +64 -0
- package/llms.txt +28 -18
- package/package.json +7 -2
- package/readmeasset/.npmignore +3 -0
- package/readmeasset/ASSET_INDEX.md +3 -0
- package/readmeasset/ASSET_PROVENANCE.md +6 -0
- package/readmeasset/omk-adaptorch-ouroboros-supermemory.svg +95 -0
- package/readmeasset/omk-init-control-loop.svg +118 -0
- package/readmeasset/omk-parallel-subagents.svg +97 -0
- package/templates/web-bridge/chrome-extension/background.js +1 -1
package/DESIGN.md
CHANGED
|
@@ -2,13 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
## Product Identity
|
|
4
4
|
|
|
5
|
-
OMK is a provider-neutral verified agent runtime and
|
|
5
|
+
OMK is a provider-neutral verified agent runtime and root orchestrator, not a generic multi-model dashboard.
|
|
6
6
|
|
|
7
7
|
Core sentence:
|
|
8
8
|
|
|
9
|
-
>
|
|
9
|
+
> Kimi writes. OMK coordinates, verifies, remembers, and guards.
|
|
10
10
|
|
|
11
|
-
Design surfaces must show
|
|
11
|
+
Design surfaces must show that Kimi is the primary coding authority while OMK exposes run state, evidence, graph memory, scoped MCP/skills/hooks state, worktree isolation, provider fallback, and operator controls. Never imply completion from narration alone; visual “done” states require command, diff, artifact, or review evidence.
|
|
12
|
+
|
|
13
|
+
Open Design bridge outputs must treat this `DESIGN.md` as the source of truth for tokens, product constraints, and brand direction. Catalog styles from Open Design or `awesome-design-md` are reference inputs only; adapt them to the local OMK system instead of replacing tokens or cloning external brands.
|
|
12
14
|
|
|
13
15
|
## Runtime Algorithm Reference
|
|
14
16
|
|
|
@@ -20,89 +22,113 @@ approval/sandbox policy, and adapter capability boundaries.
|
|
|
20
22
|
|
|
21
23
|
## Reference Design System
|
|
22
24
|
|
|
23
|
-
기준 디자인:
|
|
24
|
-
|
|
25
|
-
현재 브랜드 기준 이미지는 `readmeasset/omk-control.webp` 이다. 로컬 런타임에서 한국어 별칭이 필요하면 프로젝트 루트의 `오픈멀티에이전트킷.webp`는 이 기준 이미지의 alias로만 취급하고, 배포/문서 링크는 패키징 검증이 되는 `readmeasset/omk-control.webp`를 사용한다. 이미지 provenance와 배포 전 확인 상태는 `readmeasset/ASSET_PROVENANCE.md`에 기록한다.
|
|
25
|
+
기준 디자인: **냥심판 (Nyang Judge)** — 따뜻한 크림 베이지 배경, 초콜릿 브라운 타이포그래피, 귀여운 고양이 판사 일러스트, 노랑 CTA, 오렌지 강조, 발바닥 별점이 있는 "살까 말까?" 구매 재판 앱의 디자인 시스템을 OMK에 통합.
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
에셋 출처: `/public/assets/` — `cat-judge.png`, `paw-rating.png`, `verdict-*.png`, `logo-600x600.png`
|
|
28
|
+
레퍼런스: `/public/assets/references/` — `dashboard.png`, `landing-and-form.png`, `my-page.png`, `records.png`, `result.png`
|
|
28
29
|
|
|
29
30
|
패키징 정책: `/public/assets/`는 웹사이트/디자인 작업용 **source-only reference asset**이며 현재 npm CLI 패키지에는 포함하지 않는다. 라이선스와 출처가 기록되지 않은 에셋은 source-only 상태로 유지하고, CLI/init 문서나 배포 패키지에 이미지가 필요하면 provenance(라이선스, 원출처, 사용 권한, 검토일)를 먼저 기록한 뒤 최소 선별본만 `readmeasset/` 또는 `docs/assets/`로 이동해 포함한다. `.gitignore`와 package audit은 `/public/assets/**`가 실수로 커밋되거나 npm tarball에 들어가는 것을 막는 방어선이다.
|
|
30
31
|
|
|
31
32
|
## Visual Direction
|
|
32
33
|
|
|
33
|
-
- **Mood**:
|
|
34
|
-
- **Shape**:
|
|
35
|
-
- **Layout**:
|
|
36
|
-
- **
|
|
37
|
-
- **Animation**:
|
|
38
|
-
- **Voice**: cute/mascot tone 금지. operator, telemetry, evidence, control, route, signal 어휘 사용
|
|
34
|
+
- **Mood**: 따뜻하고 아늑한 코리안 코트룸 토이박스 — "고양이 판사가 지켜보는 OMK 작업실"
|
|
35
|
+
- **Shape**: 20–30px 둥근 카드, pill 필터, 44px+ 터치 타겟
|
|
36
|
+
- **Layout**: max-width 430px 모바일 앱 셸, 데스크톱에서는 폰 프레임처럼 중앙 정렬 (HUD/cockpit은 풀와이드)
|
|
37
|
+
- **Illustration**: `cat-judge.png`를 OMK 마스코트로 사용; Kimicat은 보조 캐릭터
|
|
38
|
+
- **Animation**: fadeInUp, bounceIn, float, paw-pop, card-3d-tilt, scale-in-bounce
|
|
39
39
|
|
|
40
|
-
## Colors (
|
|
40
|
+
## Colors (냥심판 × OMK 통합)
|
|
41
41
|
|
|
42
42
|
### Page & Surface
|
|
43
43
|
|
|
44
44
|
| Token | Hex | Usage |
|
|
45
45
|
|-------|-----|-------|
|
|
46
|
-
| `--bg-page` | `#
|
|
47
|
-
| `--bg-page-soft` | `#
|
|
48
|
-
| `--bg-page-deep` | `#
|
|
49
|
-
| `--bg-card` | `#
|
|
50
|
-
| `--bg-warm-card` | `#
|
|
51
|
-
| `--bg-soft` | `#
|
|
46
|
+
| `--bg-page` | `#FFF8EF` | 메인 페이지 배경 |
|
|
47
|
+
| `--bg-page-soft` | `#FFFDF8` | 부드러운 배경 |
|
|
48
|
+
| `--bg-page-deep` | `#F8EAD7` | 깊은 배경 (그라데이션 하단) |
|
|
49
|
+
| `--bg-card` | `#FFFFFF` | 카드 배경 |
|
|
50
|
+
| `--bg-warm-card` | `#FFF4E6` | 따뜻한 카드 배경 |
|
|
51
|
+
| `--bg-soft` | `#FFFAF2` | 초부드러운 배경 |
|
|
52
52
|
|
|
53
|
-
###
|
|
53
|
+
### Brown Scale (텍스트/UI)
|
|
54
54
|
|
|
55
55
|
| Token | Hex | Usage |
|
|
56
56
|
|-------|-----|-------|
|
|
57
|
-
| `--
|
|
58
|
-
| `--
|
|
59
|
-
| `--
|
|
60
|
-
| `--
|
|
61
|
-
| `--
|
|
62
|
-
| `--
|
|
57
|
+
| `--brown-950` | `#2A170D` | 최고강조 텍스트 |
|
|
58
|
+
| `--brown-900` | `#3A1F10` | Primary 텍스트 |
|
|
59
|
+
| `--brown-800` | `#4A2A14` | 헤딩 |
|
|
60
|
+
| `--brown-700` | `#5A3219` | 강조 텍스트 |
|
|
61
|
+
| `--brown-600` | `#815029` | 서브헤딩 |
|
|
62
|
+
| `--brown-500` | `#9A6A42` | 중간 톤 |
|
|
63
|
+
| `--brown-300` | `#D8AA72` | 호버/액센트 |
|
|
63
64
|
|
|
64
|
-
###
|
|
65
|
+
### Yellow / CTA
|
|
66
|
+
|
|
67
|
+
| Token | Hex | Usage |
|
|
68
|
+
|-------|-----|-------|
|
|
69
|
+
| `--yellow-600` | `#F2A900` | CTA 호버 베이스 |
|
|
70
|
+
| `--yellow-500` | `#FFC83D` | Primary CTA |
|
|
71
|
+
| `--yellow-400` | `#FFD96B` | CTA 그라데이션 |
|
|
72
|
+
| `--yellow-300` | `#FFD978` | CTA 라이트 |
|
|
73
|
+
|
|
74
|
+
### Orange / Verdict Emphasis
|
|
65
75
|
|
|
66
76
|
| Token | Hex | Usage |
|
|
67
77
|
|-------|-----|-------|
|
|
68
|
-
| `--
|
|
69
|
-
| `--
|
|
70
|
-
| `--
|
|
71
|
-
| `--text-inverse` | `#070B14` | 밝은 surface 위 텍스트 |
|
|
78
|
+
| `--orange-600` | `#F05A28` | 강조 오렌지 |
|
|
79
|
+
| `--orange-500` | `#F47719` | 액센트 오렌지 |
|
|
80
|
+
| `--orange-400` | `#FF9358` | 라이트 오렌지 |
|
|
72
81
|
|
|
73
82
|
### Semantic Colors
|
|
74
83
|
|
|
75
84
|
| Token | Hex | Usage |
|
|
76
85
|
|-------|-----|-------|
|
|
77
|
-
| `--green-600` | `#
|
|
78
|
-
| `--green-100` | `#
|
|
79
|
-
| `--red-600` | `#
|
|
80
|
-
| `--red-100` | `#
|
|
81
|
-
| `--warning` | `#
|
|
82
|
-
| `--warning-bg` | `#
|
|
83
|
-
| `--info` | `#
|
|
84
|
-
| `--info-bg` | `#
|
|
86
|
+
| `--green-600` | `#2F9B4A` | 성공/통과 |
|
|
87
|
+
| `--green-100` | `#E9F8E8` | 성공 배경 |
|
|
88
|
+
| `--red-600` | `#E5482D` | 실패/위험 |
|
|
89
|
+
| `--red-100` | `#FFE1D8` | 위험 배경 |
|
|
90
|
+
| `--warning` | `#B35C00` | 경고 |
|
|
91
|
+
| `--warning-bg` | `#FFF0C7` | 경고 배경 |
|
|
92
|
+
| `--info` | `#536D7A` | 정보 |
|
|
93
|
+
| `--info-bg` | `#EAF5FF` | 정보 배경 |
|
|
85
94
|
|
|
86
95
|
### Border & Divider
|
|
87
96
|
|
|
88
97
|
| Token | Hex | Usage |
|
|
89
98
|
|-------|-----|-------|
|
|
90
|
-
| `--
|
|
91
|
-
| `--
|
|
92
|
-
|
|
99
|
+
| `--cream-border` | `#EED9C4` | 기본 보더 |
|
|
100
|
+
| `--cream-border-strong` | `#D8B58F` | 강조 보더 |
|
|
101
|
+
|
|
102
|
+
### Text Colors
|
|
103
|
+
|
|
104
|
+
| Token | Hex | Usage |
|
|
105
|
+
|-------|-----|-------|
|
|
106
|
+
| `--text-primary` | `#3A1F10` | 본문 텍스트 |
|
|
107
|
+
| `--text-secondary` | `#7D6148` | 보조 텍스트 |
|
|
108
|
+
| `--text-muted` | `#8B6F59` | 흐린 텍스트 |
|
|
109
|
+
| `--text-inverse` | `#FFF8EF` | 어두운 배경 위 텍스트 |
|
|
110
|
+
|
|
111
|
+
### Legacy Kimicat Colors (보존)
|
|
112
|
+
|
|
113
|
+
| Token | Hex | Usage |
|
|
114
|
+
|-------|-----|-------|
|
|
115
|
+
| `--kimicat-purple` | `#7B5BF5` | Kimicat 눈, 로고 액센트 |
|
|
116
|
+
| `--kimicat-pink` | `#EC4899` | 하트/장식 |
|
|
117
|
+
| `--kimicat-mint` | `#14B8A6` | 초코민트 테마 |
|
|
118
|
+
| `--kimicat-dark` | `#241C32` | 후디/다크모드 |
|
|
93
119
|
|
|
94
120
|
### Verdict Colors (에이전트 상태)
|
|
95
121
|
|
|
96
122
|
| 상태 | 색상 | Usage |
|
|
97
123
|
|------|------|-------|
|
|
98
|
-
| `PASS / DONE` | `#
|
|
99
|
-
| `FAIL / ERROR` | `#
|
|
100
|
-
| `WARN / BLOCKED` | `#
|
|
101
|
-
| `INFO / PENDING` | `#
|
|
124
|
+
| `PASS / DONE` | `#2F8A3B` on `#E7F6D9` | 성공/완료 |
|
|
125
|
+
| `FAIL / ERROR` | `#E85D1F` on `#FFE4D6` | 실패/에러 |
|
|
126
|
+
| `WARN / BLOCKED` | `#B35C00` on `#FFF0C7` | 경고/블록 |
|
|
127
|
+
| `INFO / PENDING` | `#536D7A` on `#E8EEF1` | 정보/대기 |
|
|
102
128
|
|
|
103
129
|
Operational status labels:
|
|
104
130
|
|
|
105
|
-
- `PASS`: verified by command, diff, review,
|
|
131
|
+
- `PASS`: verified by command, diff, review, or artifact.
|
|
106
132
|
- `WARN`: scope drift, provider fallback, skipped check, or partial evidence.
|
|
107
133
|
- `BLOCKED`: missing permission, failed gate, dirty worktree, unavailable MCP, or protected-path checkpoint.
|
|
108
134
|
- `ADVISORY`: provider/reviewer/research output without write authority.
|
|
@@ -112,10 +138,10 @@ Operational status labels:
|
|
|
112
138
|
HUD/cockpit must prioritize:
|
|
113
139
|
|
|
114
140
|
1. active goal / run / session
|
|
115
|
-
2. current
|
|
141
|
+
2. current Kimi or worker lane
|
|
116
142
|
3. changed files and worktree location
|
|
117
143
|
4. TODO / blocker state
|
|
118
|
-
5. evidence
|
|
144
|
+
5. evidence gate status
|
|
119
145
|
6. scoped MCP / skills / hooks summary
|
|
120
146
|
7. provider route and fallback status
|
|
121
147
|
8. replay / inspect / graph links
|
|
@@ -160,12 +186,12 @@ Font Imports:
|
|
|
160
186
|
--radius-pill: 999px;
|
|
161
187
|
|
|
162
188
|
/* Shadows */
|
|
163
|
-
--shadow-card: 0
|
|
164
|
-
--shadow-soft: 0
|
|
165
|
-
--shadow-button: 0
|
|
166
|
-
--shadow-nav: 0 -10px 34px rgba(
|
|
167
|
-
--shadow-hover: 0
|
|
168
|
-
--shadow-glow: 0 0 24px rgba(
|
|
189
|
+
--shadow-card: 0 10px 26px rgba(91, 52, 24, 0.08);
|
|
190
|
+
--shadow-soft: 0 16px 48px rgba(80, 45, 18, 0.12);
|
|
191
|
+
--shadow-button: 0 5px 0 #D88A1D, 0 14px 24px rgba(216, 138, 29, 0.22);
|
|
192
|
+
--shadow-nav: 0 -10px 34px rgba(61, 37, 23, 0.08);
|
|
193
|
+
--shadow-hover: 0 18px 40px rgba(91, 52, 24, 0.14);
|
|
194
|
+
--shadow-glow: 0 0 24px rgba(255, 189, 46, 0.35);
|
|
169
195
|
|
|
170
196
|
/* Touch target */
|
|
171
197
|
--touch-target: 44px;
|
|
@@ -174,20 +200,21 @@ Font Imports:
|
|
|
174
200
|
|
|
175
201
|
## Component Patterns
|
|
176
202
|
|
|
177
|
-
### Cards (
|
|
203
|
+
### Cards (warm-card)
|
|
178
204
|
|
|
179
205
|
```css
|
|
180
|
-
.
|
|
181
|
-
background:
|
|
182
|
-
border: 1px solid var(--
|
|
206
|
+
.warm-card {
|
|
207
|
+
background: rgba(255, 255, 255, 0.9);
|
|
208
|
+
border: 1px solid var(--cream-border);
|
|
183
209
|
border-radius: var(--radius-xl);
|
|
184
210
|
box-shadow: var(--shadow-card);
|
|
185
|
-
backdrop-filter: blur(
|
|
186
|
-
transition: transform 0.
|
|
211
|
+
backdrop-filter: blur(8px);
|
|
212
|
+
transition: transform 0.25s cubic-bezier(0.2, 0.85, 0.25, 1.1),
|
|
213
|
+
box-shadow 0.25s ease;
|
|
187
214
|
}
|
|
188
|
-
.
|
|
189
|
-
border-color: var(--neon-cyan);
|
|
215
|
+
.warm-card:hover {
|
|
190
216
|
box-shadow: var(--shadow-hover);
|
|
217
|
+
border-color: var(--cream-border-strong);
|
|
191
218
|
}
|
|
192
219
|
```
|
|
193
220
|
|
|
@@ -197,20 +224,20 @@ Font Imports:
|
|
|
197
224
|
.primary-button {
|
|
198
225
|
display: inline-flex; align-items: center; justify-content: center;
|
|
199
226
|
width: 100%; min-height: 56px; gap: var(--space-2);
|
|
200
|
-
border:
|
|
201
|
-
background: linear-gradient(
|
|
202
|
-
color: var(--
|
|
227
|
+
border: 0; border-radius: 20px;
|
|
228
|
+
background: linear-gradient(180deg, var(--yellow-400), var(--yellow-500));
|
|
229
|
+
color: var(--brown-900);
|
|
203
230
|
box-shadow: var(--shadow-button);
|
|
204
|
-
font-weight:
|
|
205
|
-
transition: transform 0.18s ease, box-shadow 0.18s ease
|
|
231
|
+
font-weight: 800; font-size: 16px;
|
|
232
|
+
transition: transform 0.18s ease, box-shadow 0.18s ease;
|
|
206
233
|
}
|
|
207
234
|
.primary-button:hover {
|
|
208
235
|
transform: translateY(-2px);
|
|
209
|
-
|
|
210
|
-
box-shadow: 0 0 28px rgba(0, 214, 255, 0.34), 0 0 30px rgba(255, 71, 178, 0.22);
|
|
236
|
+
box-shadow: 0 7px 0 #D88A1D, 0 20px 32px rgba(216, 138, 29, 0.28);
|
|
211
237
|
}
|
|
212
238
|
.primary-button:active {
|
|
213
|
-
transform: translateY(
|
|
239
|
+
transform: translateY(3px) scale(0.97);
|
|
240
|
+
box-shadow: 0 1px 0 #D88A1D, 0 4px 10px rgba(216, 138, 29, 0.14);
|
|
214
241
|
}
|
|
215
242
|
```
|
|
216
243
|
|
|
@@ -220,14 +247,10 @@ Font Imports:
|
|
|
220
247
|
.secondary-button {
|
|
221
248
|
display: inline-flex; align-items: center; justify-content: center;
|
|
222
249
|
width: 100%; min-height: 56px; gap: var(--space-2);
|
|
223
|
-
border: 1.5px solid var(--
|
|
224
|
-
background: rgba(
|
|
225
|
-
color: var(--
|
|
226
|
-
font-weight:
|
|
227
|
-
}
|
|
228
|
-
.secondary-button:hover {
|
|
229
|
-
border-color: var(--neon-green);
|
|
230
|
-
box-shadow: 0 0 18px rgba(0, 255, 194, 0.18);
|
|
250
|
+
border: 1.5px solid var(--cream-border-strong); border-radius: 20px;
|
|
251
|
+
background: rgba(255, 255, 255, 0.72);
|
|
252
|
+
color: var(--brown-900);
|
|
253
|
+
font-weight: 800; font-size: 16px;
|
|
231
254
|
}
|
|
232
255
|
```
|
|
233
256
|
|
|
@@ -239,49 +262,49 @@ Font Imports:
|
|
|
239
262
|
width: 100%; max-width: 430px;
|
|
240
263
|
height: calc(70px + env(safe-area-inset-bottom, 0px));
|
|
241
264
|
display: flex; align-items: flex-start; justify-content: space-around;
|
|
242
|
-
background: rgba(
|
|
243
|
-
backdrop-filter: blur(
|
|
244
|
-
border-top: 1px solid
|
|
265
|
+
background: rgba(255, 248, 236, 0.92);
|
|
266
|
+
backdrop-filter: blur(12px);
|
|
267
|
+
border-top: 1px solid rgba(240, 221, 196, 0.7);
|
|
245
268
|
box-shadow: var(--shadow-nav);
|
|
246
269
|
z-index: 50;
|
|
247
270
|
}
|
|
248
271
|
.bottom-nav-item.active {
|
|
249
|
-
color: var(--
|
|
250
|
-
background: linear-gradient(180deg,
|
|
272
|
+
color: var(--brown-900);
|
|
273
|
+
background: linear-gradient(180deg, #FFF4D2, #FFFFFF00);
|
|
251
274
|
}
|
|
252
275
|
```
|
|
253
276
|
|
|
254
277
|
## OMK HUD / Cockpit Theme
|
|
255
278
|
|
|
256
|
-
OMK의 CLI HUD와 Cockpit는
|
|
257
|
-
|
|
258
|
-
```
|
|
259
|
-
Primary: #
|
|
260
|
-
Secondary: #
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
Info: #00D6FF
|
|
279
|
+
OMK의 CLI HUD와 Cockpit는 브라운 계열 터미널 테마 사용:
|
|
280
|
+
|
|
281
|
+
```
|
|
282
|
+
Primary: #FFC83D (yellow CTA)
|
|
283
|
+
Secondary: #D8AA72 (brown accent)
|
|
284
|
+
Background: #2A170D (dark brown bg)
|
|
285
|
+
Surface: #3A1F10 (card surfaces)
|
|
286
|
+
Text: #FFF8EF (cream text)
|
|
287
|
+
Muted: #8B6F59 (muted text)
|
|
288
|
+
Success: #2F9B4A (green)
|
|
289
|
+
Error: #E85D1F (orange-red)
|
|
290
|
+
Warning: #B35C00 (amber)
|
|
291
|
+
Info: #536D7A (slate)
|
|
270
292
|
```
|
|
271
293
|
|
|
272
294
|
## Asset Usage Matrix
|
|
273
295
|
|
|
274
|
-
Asset provenance gate: 이 표는 디자인 의도만 설명한다.
|
|
296
|
+
Asset provenance gate: 이 표는 디자인 의도만 설명한다. 아래 `public/assets` 항목은 provenance가 기록될 때까지 source-only이며, package/release 산출물에는 `readmeasset/` 및 `docs/assets/`처럼 provenance가 확인된 선별 에셋만 포함한다.
|
|
297
|
+
|
|
275
298
|
|
|
276
299
|
| OMK Surface | Assets Used |
|
|
277
300
|
|-------------|-------------|
|
|
278
|
-
| HUD |
|
|
279
|
-
| Cockpit |
|
|
280
|
-
| Dashboard |
|
|
281
|
-
| Run Status | pass
|
|
282
|
-
| Social Preview |
|
|
283
|
-
| Landing Page |
|
|
284
|
-
| Error States |
|
|
301
|
+
| HUD | `cat-judge.png` (mascot, small) |
|
|
302
|
+
| Cockpit | `cat-judge.png` (hero), `paw-rating.png` (status icon) |
|
|
303
|
+
| Dashboard | `logo-600x600.png` (logo), `verdict-*.png` (status states) |
|
|
304
|
+
| Run Status | verdict images mapped to run states: `adopt`=pass, `confiscated`=error, `jail`=fail, `wait`=pending |
|
|
305
|
+
| Social Preview | `thumbnail-1100x800.png`, `cat-gavel.png` |
|
|
306
|
+
| Landing Page | `references/landing-and-form.png` (reference) |
|
|
307
|
+
| Error States | `cat-gavel.png` (judge gavel for error/blocked) |
|
|
285
308
|
|
|
286
309
|
## Animation Presets
|
|
287
310
|
|
|
@@ -306,22 +329,23 @@ Asset provenance gate: 이 표는 디자인 의도만 설명한다. source-only
|
|
|
306
329
|
## Rules
|
|
307
330
|
|
|
308
331
|
1. **Use tokens before inventing new values** — 모든 색상/간격/쉐도우는 CSS 변수 참조
|
|
309
|
-
2. **
|
|
310
|
-
3. **
|
|
311
|
-
4. **
|
|
312
|
-
5. **
|
|
313
|
-
6. **
|
|
314
|
-
7. **
|
|
315
|
-
8. **
|
|
316
|
-
9. **
|
|
332
|
+
2. **Yellow (`#FFC83D`) is the CTA hero** — 주요 액션 버튼에만 사용
|
|
333
|
+
3. **Brown (`#3A1F10`) is text authority** — 모든 본문/헤딩 텍스트
|
|
334
|
+
4. **Cream (`#FFF8EF`) is the page soul** — 메인 배경, 절대 순수 흰색 사용 금지
|
|
335
|
+
5. **Orange (`#F05A28`) is emphasis only** — 경고/강조/수치 표시에 제한적 사용
|
|
336
|
+
6. **Rounded everything** — 20px+ border-radius on cards, pill buttons
|
|
337
|
+
7. **44px minimum touch targets** — 모바일/태블릿 터치 대응
|
|
338
|
+
8. **Cat judge is mascot** — `cat-judge.png`를 OMK 브랜드 아이덴티티로 사용
|
|
339
|
+
9. **Reduced motion respected** — `prefers-reduced-motion` 미디어 쿼리 필수
|
|
340
|
+
10. **Color never the only indicator** — 상태 배지에 텍스트 + 색상 함께 사용
|
|
317
341
|
|
|
318
342
|
## Accessibility
|
|
319
343
|
|
|
320
344
|
- 모든 인터랙티브 요소에 `aria-label` / `aria-current` 제공
|
|
321
|
-
- 포커스 링:
|
|
345
|
+
- 포커스 링: brown border + yellow glow (`outline: 3px solid rgba(255, 189, 46, 0.42)`)
|
|
322
346
|
- 최소 터치 타겟 44px
|
|
323
347
|
- `prefers-reduced-motion: reduce` 전역 적용
|
|
324
|
-
- 색상 대비: WCAG AA 이상 (
|
|
348
|
+
- 색상 대비: WCAG AA 이상 (brown-on-cream = 10.5:1)
|
|
325
349
|
|
|
326
350
|
## References
|
|
327
351
|
|
package/MATURITY.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# OMK Command Maturity Matrix
|
|
2
2
|
|
|
3
|
-
Last updated: 2026-
|
|
4
|
-
Current source version: v0.
|
|
3
|
+
Last updated: 2026-05-24
|
|
4
|
+
Current source version: v0.79.3
|
|
5
5
|
|
|
6
6
|
| Level | Meaning |
|
|
7
7
|
|-------|---------|
|
|
@@ -15,7 +15,7 @@ Current source version: v0.78.8 (`v1.2` runtime contract family)
|
|
|
15
15
|
|---------|-------|
|
|
16
16
|
| `omk init` | Project scaffold for AGENTS.md, DESIGN.md, and local `.omk/` state. |
|
|
17
17
|
| `omk doctor` | Runtime/toolchain/project diagnostics. Supports `--json` for CI-style consumption. |
|
|
18
|
-
| `omk chat` | Interactive chat coordinator with startup status/HUD preview and run-scoped harness manifest generation. The
|
|
18
|
+
| `omk chat` | Interactive chat coordinator with startup status/HUD preview and run-scoped harness manifest generation. The Kimi-default path is stable; native provider-neutral routing remains gated by the hardening items below. |
|
|
19
19
|
| `omk hud` | Execution status and local system usage HUD. |
|
|
20
20
|
| `omk cockpit` | Sidecar cockpit for run state, TODOs, and ETA. |
|
|
21
21
|
| `omk plan` | Plan-only execution entrypoint. |
|
|
@@ -39,8 +39,8 @@ Current source version: v0.78.8 (`v1.2` runtime contract family)
|
|
|
39
39
|
| `omk sync` | Asset sync with dry-run/diff/rollback support; manifest-backed rollback coverage is still incomplete for some global assets. |
|
|
40
40
|
| `omk verify` | Evidence gate verification for runs. Supports `--json`. |
|
|
41
41
|
| `omk goal` | Codex-style goal create/list/show/run/verify/close/block/continue with generated plan/evidence criteria. |
|
|
42
|
-
| `omk provider` / `omk deepseek` / `omk deepseekset` |
|
|
43
|
-
| `omk graph view`
|
|
42
|
+
| `omk provider` / `omk deepseek` / `omk deepseekset` | DeepSeek availability, enable/disable, API-key setup, and provider-neutral opportunistic routing with Kimi as the most mature adapter. JSON exists for provider doctor and state changes. |
|
|
43
|
+
| `omk graph view` | Generates HTML from `.omk/memory/graph-state.json`; useful now, but ontology coverage and run-linking are still maturing. |
|
|
44
44
|
| `omk mcp` | Project/global MCP list, doctor, test, serve, add/remove/install/sync-global with structured diagnostics and explicit project/global scope handling. |
|
|
45
45
|
| `omk dag` | Spec DAG validation/show/replay/from-spec. Replay supports provider policy. |
|
|
46
46
|
| `omk screenshot` | Clipboard screenshot store/list/clean utility with JSON on subcommands. |
|
|
@@ -63,19 +63,14 @@ Current source version: v0.78.8 (`v1.2` runtime contract family)
|
|
|
63
63
|
| `omk research` | Core runtime web research wrapper; depends on Kimi tool availability. |
|
|
64
64
|
| `omk open-design-agent` | Local Open Design CLI bridge. |
|
|
65
65
|
|
|
66
|
-
## Regression Proof Matrix Claim Boundary
|
|
67
|
-
|
|
68
|
-
Regression Proof Matrix is a release-defense gate, not a stable-release claim. Stable promotion still requires full `npm test`, live provider maturity data, and a minimal verified demo pass.
|
|
69
|
-
|
|
70
66
|
## Automation Contract Status
|
|
71
67
|
|
|
72
68
|
| Area | Current state | Next hardening |
|
|
73
69
|
|------|---------------|----------------|
|
|
74
70
|
| JSON output | Present on `doctor`, `runs/history`, `update`, `verify`, `goal` read/verify commands, provider commands, and screenshot subcommands; provider/screenshot JSON contracts are now regression-tested. | Expand consistent JSON to MCP diagnostics, graph, DAG, summary, and workflow entrypoints. |
|
|
75
|
-
| Provider routing |
|
|
71
|
+
| Provider routing | DeepSeek opportunistic worker routing exists for low-risk/read-heavy paths; Kimi remains the most mature adapter, orchestrator, and fallback; run summaries/reports now include provider attempt and fallback totals. | Add HUD provider route metrics and broader release-gate tests for fallback/metadata contracts. |
|
|
76
72
|
| Native runtime safety | OMK owns the root-orchestrator direction, but native chat must still lock turn-risk inference, approval/sandbox propagation, authority resolution, provider health probes, and DeepSeek read-only enforcement before stable provider-neutral claims. | Treat `docs/native-root-runtime-hardening.md` and `.omk/specs/native-orchestrator-phase1/` as the active hardening contract. |
|
|
77
73
|
| MCP diagnostics | `mcp list/doctor/test` exist; invalid project/global MCP JSON now fails visibly through diagnostics without exposing config contents. | Add machine-readable MCP JSON and structured failure categories for command resolution, timeout, permission, and server health. |
|
|
78
74
|
| Skills and harness templates | `omk skill` exposes current core/TypeScript/review packs, while init templates document project MCP scope, runtime skills, portable `.agents/skills`, and run-scoped harness manifests. | Keep external-inspired skills compact, source-linked, and non-vendored; verify install/sync through `skill-command` tests and package audit. |
|
|
79
|
-
| Release docs and site | README, CHANGELOG, MATURITY, ROADMAP,
|
|
80
|
-
| Public proof bundles | `omk.proof-bundle.v1`, `npm run proof:check`, `npm run proof:index`, and ten scoped RC hardening bundles now cover no-Kimi, provider/doctor, fallback routing, native safety, contract/version, evidence-block, replay/inspect, and graph-audit axes. Proof integrity includes runId/commit/evidence/decision linkage and per-bundle `sha256sums.txt` artifact hashes. | Keep strengthening proof authenticity with sanitized repo-relative artifacts, non-empty known limitations, and broader provider fallback variants. |
|
|
75
|
+
| Release docs and site | README, CHANGELOG, MATURITY, ROADMAP, getting-started docs, package audit, and release-gate commands now distinguish the v0.79.3 source target from registry-published claims while documenting alpha/experimental surfaces, parallel subagent orchestration, typed doctor repair plans, startup update prompts, native safety package readiness, current harness templates, packaged workflow skills, and the public project repository at `https://github.com/dmae97/open-multi-agent-kit`. | Treat `npm run release:check`, native safety packaging, tarball install smoke, GitHub Smoke Test, registry verification, and GitHub CI evidence on the exact commit as the publish/deploy gate before claiming v0.79.3 as released. |
|
|
81
76
|
| Goal planner | Goal lifecycle exists, including continue, generated plan/evidence criteria, and verification. | Expand planner quality scoring and release evidence. |
|