arkaos 4.12.0 → 4.13.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 (65) hide show
  1. package/README.md +2 -2
  2. package/VERSION +1 -1
  3. package/arka/SKILL.md +1 -1
  4. package/arka/skills/flow/SKILL.md +11 -4
  5. package/config/claude-agents/content-researcher.md +51 -0
  6. package/config/claude-agents/frontend-dev.md +1 -1
  7. package/config/claude-agents/info-compiler.md +51 -0
  8. package/config/claude-agents/scriptwriter.md +9 -7
  9. package/config/claude-agents/trends-analyst.md +51 -0
  10. package/config/claude-agents/ux-designer.md +1 -1
  11. package/config/claude-agents/video-producer.md +51 -0
  12. package/config/claude-agents/visual-designer.md +1 -1
  13. package/config/constitution.yaml +1 -0
  14. package/config/mcp-policy.yaml +8 -0
  15. package/core/governance/__pycache__/evidence_checks.cpython-313.pyc +0 -0
  16. package/core/governance/__pycache__/phantom_action_check.cpython-313.pyc +0 -0
  17. package/core/governance/__pycache__/phantom_action_check.cpython-314.pyc +0 -0
  18. package/core/governance/evidence_checks.py +70 -0
  19. package/core/hooks/__pycache__/pre_tool_use.cpython-313.pyc +0 -0
  20. package/core/hooks/__pycache__/pre_tool_use.cpython-314.pyc +0 -0
  21. package/core/hooks/__pycache__/stop.cpython-313.pyc +0 -0
  22. package/core/hooks/__pycache__/stop.cpython-314.pyc +0 -0
  23. package/core/hooks/pre_tool_use.py +8 -2
  24. package/core/runtime/__pycache__/model_routing_context.cpython-313.pyc +0 -0
  25. package/core/runtime/model_routing_context.py +4 -0
  26. package/core/workflow/__pycache__/frontend_gate.cpython-313.pyc +0 -0
  27. package/core/workflow/__pycache__/frontend_gate_telemetry.cpython-313.pyc +0 -0
  28. package/core/workflow/__pycache__/frontend_gate_telemetry_cli.cpython-313.pyc +0 -0
  29. package/core/workflow/__pycache__/plan_approval.cpython-314.pyc +0 -0
  30. package/core/workflow/frontend_gate.py +118 -25
  31. package/core/workflow/frontend_gate_telemetry.py +129 -0
  32. package/core/workflow/frontend_gate_telemetry_cli.py +53 -0
  33. package/departments/brand/agents/ux-designer.yaml +1 -1
  34. package/departments/brand/agents/visual-designer.yaml +1 -1
  35. package/departments/brand/references/uiux-knowledge-and-tools.md +73 -0
  36. package/departments/brand/skills/colors/SKILL.md +76 -3
  37. package/departments/brand/skills/design-review/SKILL.md +81 -31
  38. package/departments/brand/skills/design-system/SKILL.md +32 -0
  39. package/departments/brand/skills/identity-system/SKILL.md +65 -4
  40. package/departments/brand/skills/logo-brief/SKILL.md +81 -3
  41. package/departments/brand/skills/mockup-generate/SKILL.md +82 -3
  42. package/departments/brand/skills/ux-audit/SKILL.md +74 -5
  43. package/departments/brand/skills/wireframe/SKILL.md +75 -3
  44. package/departments/content/SKILL.md +16 -2
  45. package/departments/content/agents/production/content-researcher.yaml +68 -0
  46. package/departments/content/agents/production/info-compiler.yaml +68 -0
  47. package/departments/content/agents/production/trends-analyst.yaml +69 -0
  48. package/departments/content/agents/production/video-producer.yaml +77 -0
  49. package/departments/content/agents/scriptwriter.yaml +29 -10
  50. package/departments/content/skills/research-compile/SKILL.md +75 -0
  51. package/departments/content/skills/short-form/SKILL.md +3 -1
  52. package/departments/content/skills/trend-hunt/SKILL.md +74 -0
  53. package/departments/content/skills/video-produce/SKILL.md +98 -0
  54. package/departments/content/skills/video-setup/SKILL.md +91 -0
  55. package/departments/content/squad.yaml +6 -0
  56. package/departments/content/workflows/shorts-social.yaml +83 -0
  57. package/departments/content/workflows/video-production.yaml +142 -0
  58. package/departments/content/workflows/youtube.yaml +3 -0
  59. package/departments/dev/agents/frontend-dev.yaml +1 -1
  60. package/installer/doctor.js +56 -1
  61. package/knowledge/agents-registry-v2.json +209 -14
  62. package/knowledge/commands-keywords.json +1388 -234
  63. package/knowledge/commands-registry.json +132 -3
  64. package/package.json +1 -1
  65. package/pyproject.toml +1 -1
@@ -0,0 +1,91 @@
1
+ ---
2
+ name: content/video-setup
3
+ description: >
4
+ One-time environment bootstrap for video production — preflights and
5
+ (with per-step user confirmation) installs the Hyperframes skills,
6
+ Agent-Reach CLI, and Higgsfield key wiring, ending with an honest
7
+ capability matrix. TRIGGER: "/content video-setup", "setup video",
8
+ "prepara o ambiente de vídeo", "instala o hyperframes", "configura a
9
+ produção de vídeo", "video production setup". SKIP: actually producing
10
+ a video -> content/video-produce (it preflights non-interactively and
11
+ degrades); general MCP setup -> /arka keys or apply-mcps.
12
+ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
13
+ ---
14
+
15
+ <!-- arka:kb-first-prefix begin -->
16
+ > **KB-first:** query `mcp__obsidian__search_notes` and cite
17
+ > `[[wikilinks]]` — or declare the gap — BEFORE any external research.
18
+ > Full doctrine: `arka/SKILL.md` (KB-First Research).
19
+ <!-- arka:kb-first-prefix end -->
20
+
21
+ # Video Setup — `/content video-setup`
22
+
23
+ > **Agent:** Simão (Video Producer) | **Purpose:** environment bootstrap, run once per machine
24
+
25
+ ## Preflight (run first, print PASS/FAIL per row)
26
+
27
+ | Check | Command | Needed for |
28
+ |---|---|---|
29
+ | Node.js 22+ | `node --version` | Hyperframes rendering |
30
+ | FFmpeg | `ffmpeg -version` | encode/cut + transcription |
31
+ | Hyperframes skills | `ls ~/.claude/skills/ \| grep -i hyperframes` | video-as-code editing |
32
+ | Agent-Reach | `agent-reach doctor` | trend/research platform pulls |
33
+ | Higgsfield key | `HIGGSFIELD_API_KEY` in env or `~/.arkaos/keys.json` | generation engine (MCP) |
34
+
35
+ `npx arkaos doctor` runs the same five checks (warn-only) from the
36
+ installer side — this skill is the interactive fix path.
37
+
38
+ ## Install steps — EACH gated on explicit user confirmation, never silent
39
+
40
+ 1. **Hyperframes skills** (free, Apache-2.0, HeyGen):
41
+ ```
42
+ npx skills add heygen-com/hyperframes --full-depth --yes
43
+ ```
44
+ `--full-depth` is MANDATORY — without it the skills registry serves a
45
+ stale snapshot that lags the upstream main branch. Installs ~20
46
+ skills including the `/hyperframes` router, `/talking-head-recut`,
47
+ `/faceless-explainer`, `/product-launch-video`, `/motion-graphics`,
48
+ `/embedded-captions`, `/media-use`. Keep fresh later with
49
+ `npx hyperframes skills update <workflow>`.
50
+ 2. **Agent-Reach CLI** (MIT, beta): install into an isolated tool env —
51
+ `pipx install agent-reach` (or `uv tool install agent-reach`),
52
+ NEVER a bare global pip (python-core rule: virtual environments
53
+ only). Then run `agent-reach doctor` and show the user which of the
54
+ 15 platform backends are live; cookie/browser-session platforms
55
+ (X, Reddit, IG, FB) need the user's own logged sessions and stay
56
+ optional.
57
+ 3. **Higgsfield key**: `npx arkaos keys set HIGGSFIELD_API_KEY <key>`
58
+ (account at higgsfield.ai), then activate per project:
59
+ `bash apply-mcps.sh --add higgsfield` or select the `content` MCP
60
+ profile.
61
+
62
+ ## Never install binaries
63
+
64
+ Node.js and FFmpeg are system packages — print the platform-specific
65
+ instruction and stop:
66
+
67
+ - macOS: `brew install ffmpeg` · `nvm install 22`
68
+ - Linux: `apt install ffmpeg` (or distro equivalent)
69
+ - Windows: `winget install Gyan.FFmpeg`
70
+
71
+ ArkaOS detects and instructs; it never mutates the user's system
72
+ package state.
73
+
74
+ ## Capability matrix (always print at the end — honest, per backend)
75
+
76
+ | Capability | Full | Degraded | Manual |
77
+ |---|---|---|---|
78
+ | Asset generation | Higgsfield MCP | `arka-comfyui` (local) | asset brief with engine-ready prompts |
79
+ | Edit / render | Hyperframes (Node 22 + FFmpeg) | Higgsfield `explainer_video` / `shorts_studio` (server-side) | edit-ready package (script + assets + EDL + SRT) |
80
+ | Research | agent-reach | firecrawl + WebSearch | KB-only |
81
+
82
+ State plainly which tier each capability landed on and what it takes to
83
+ reach the tier above. A missing backend NEVER blocks the pipeline — it selects
84
+ the next tier and says so (multi-backend rule: no capability is ever
85
+ hardcoded to a single external backend).
86
+
87
+ ## Output
88
+
89
+ Setup report: preflight table, what was installed (with user consent
90
+ noted per step), the capability matrix, and the exact next command to
91
+ try (`/content video <topic>`).
@@ -37,3 +37,9 @@ workflows:
37
37
  - workflow_id: content-youtube
38
38
  trigger_command: "/content youtube"
39
39
  tier: enterprise
40
+ - workflow_id: content-video
41
+ trigger_command: "/content video"
42
+ tier: enterprise
43
+ - workflow_id: content-shorts-produce
44
+ trigger_command: "/content shorts"
45
+ tier: focused
@@ -0,0 +1,83 @@
1
+ id: content-shorts-produce
2
+ name: Shorts Batch Production
3
+ description: Batch production of 3-5 rendered short-form videos — trend check, hooks, scripts, assets, vertical render, posting schedule (distinct from /content short, which is script-only)
4
+ department: content
5
+ tier: focused
6
+ command: "/content shorts"
7
+ requires_branch: false
8
+ requires_spec: false
9
+ quality_gate_required: true
10
+
11
+ phases:
12
+ - id: brief
13
+ name: Shorts Brief
14
+ description: Define niche/topic, platform mix (Reels / TikTok / Shorts), batch size, and capability preflight
15
+ agents:
16
+ - agent_id: content-strategist-rafael
17
+ role: Frame niche, platforms, batch size, cadence
18
+ - agent_id: video-producer-simao
19
+ role: Capability preflight — state the asset and render tiers
20
+ parallel: true
21
+ gate:
22
+ type: user_approval
23
+ description: User confirms the batch brief
24
+
25
+ - id: trend-hooks
26
+ name: Trend Check & Hooks
27
+ description: Demand-first validation of the batch angles plus hook variants per short
28
+ agents:
29
+ - agent_id: trends-analyst-margarida
30
+ role: Trend check per angle (declared platform skips), STEPPS shortlist
31
+ - agent_id: viral-engineer-filipe
32
+ role: Hook variants (3 per short) mapped to the shortlist
33
+ parallel: true
34
+ gate:
35
+ type: auto
36
+ description: Shortlist and hooks feed the scripts
37
+
38
+ - id: script-assets
39
+ name: Scripts & Assets
40
+ description: Batch scripts (storyboard-ready, vertical framing) and asset generation per the capability matrix
41
+ agents:
42
+ - agent_id: scriptwriter-joana
43
+ role: Batch scripts — vertical-first scenes, hook in the first 2 seconds, caption-safe framing
44
+ - agent_id: video-producer-simao
45
+ role: Assets per short (Higgsfield shorts_studio when live; declared degraded tiers otherwise)
46
+ gate:
47
+ type: user_approval
48
+ description: User approves scripts and generated assets before render — credits are metered
49
+
50
+ - id: quality-gate
51
+ name: Quality Gate
52
+ description: Mandatory pre-delivery review — binary verdict on the whole batch
53
+ model_override: opus
54
+ agents:
55
+ - agent_id: cqo-marta
56
+ role: Orchestrate review, aggregate verdicts, issue binary decision
57
+ - agent_id: copy-director-eduardo
58
+ role: Scripts, captions, on-screen text
59
+ parallel: true
60
+ - agent_id: tech-director-francisca
61
+ role: Render quality, vertical specs, caption sync
62
+ parallel: true
63
+ gate:
64
+ type: quality_gate
65
+ required_verdict: APPROVED
66
+
67
+ - id: delivery
68
+ name: Delivery
69
+ description: Rendered batch plus posting schedule
70
+ agents:
71
+ - agent_id: video-producer-simao
72
+ role: 3-5 rendered 9:16 MP4s + SRTs + thumbnails
73
+ - agent_id: repurpose-distributor-nuno
74
+ role: Posting schedule per platform (native captions, hashtags, timing)
75
+ parallel: true
76
+ gate:
77
+ type: auto
78
+ description: Batch delivered
79
+ outputs:
80
+ - type: document
81
+ format: markdown
82
+ obsidian_path: "WizardingCode/Content/Shorts/"
83
+ description: Batch manifest — files, posting schedule, backend tiers used
@@ -0,0 +1,142 @@
1
+ id: content-video
2
+ name: Video Production
3
+ description: End-to-end video production — sourced research, Hollywood script, storyboard, Higgsfield asset generation, Hyperframes edit/render, virality QA, quality gate, multi-format delivery
4
+ department: content
5
+ tier: enterprise
6
+ command: "/content video"
7
+ requires_branch: false
8
+ requires_spec: false
9
+ quality_gate_required: true
10
+
11
+ phases:
12
+ - id: brief
13
+ name: Production Brief
14
+ description: Define target (brand channel / personal / client / new niche), format, platform, length; run the capability preflight and state the backend tier per capability
15
+ agents:
16
+ - agent_id: content-strategist-rafael
17
+ role: Frame target, audience, platform, format, success metric
18
+ - agent_id: video-producer-simao
19
+ role: Capability preflight (assets / edit / research tiers) + production constraints
20
+ parallel: true
21
+ gate:
22
+ type: user_approval
23
+ description: User confirms the production brief and the backend tiers
24
+
25
+ - id: research-trends
26
+ name: Research & Trend Validation
27
+ description: Sourced research with claim ledger plus demand-first angle validation, compiled into the production brief the script consumes
28
+ agents:
29
+ - agent_id: content-researcher-madalena
30
+ role: Sourced research — CRAAP-rated sources, claim ledger, [UNVERIFIED] fail-closed
31
+ - agent_id: trends-analyst-margarida
32
+ role: Demand-first angle validation + STEPPS scoring of the chosen angle
33
+ parallel: true
34
+ - agent_id: info-compiler-dinis
35
+ role: Compile the production brief (angle / audience / proof / hooks / beats / claim-source table)
36
+ gate:
37
+ type: user_approval
38
+ description: User approves the production brief
39
+ outputs:
40
+ - type: document
41
+ format: markdown
42
+ obsidian_path: "WizardingCode/Content/Research/"
43
+ description: Production brief with claim-source table
44
+
45
+ - id: script
46
+ name: Hollywood Script
47
+ description: Beat sheet then full script in scene/shot/VO/on-screen-text columns, Hook Architecture on the first 30 seconds, never-default voice
48
+ agents:
49
+ - agent_id: scriptwriter-joana
50
+ role: Beat sheet (Save the Cat / Story Circle adapted to length) + full script with scene/shot/VO/OST columns
51
+ - agent_id: viral-engineer-filipe
52
+ role: 3 hook variants + retention-drop map
53
+ parallel: true
54
+ gate:
55
+ type: user_approval
56
+ description: User approves the script and picks the hook
57
+
58
+ - id: storyboard
59
+ name: Storyboard & Shot List
60
+ description: Shot list with per-shot generation prompts, audio/VO plan, and thumbnail package under the brand design doctrine (benchmark named, [arka:design] marker)
61
+ agents:
62
+ - agent_id: video-producer-simao
63
+ role: Shot list + per-shot generation prompts + audio/VO plan + EDL skeleton
64
+ - agent_id: visual-designer-isabel
65
+ role: Thumbnail package (anti-default doctrine, benchmark named, structured design marker)
66
+ parallel: true
67
+ gate:
68
+ type: user_approval
69
+ description: User approves the storyboard — creative lock before credits are spent
70
+ outputs:
71
+ - type: document
72
+ format: markdown
73
+ obsidian_path: "WizardingCode/Content/Video/Storyboards/"
74
+ description: Shot list, generation prompts, audio plan, thumbnail specs
75
+
76
+ - id: asset-generation
77
+ name: Asset Generation
78
+ description: Execute per the capability matrix — Higgsfield primary (cost-tier models for routine b-roll, hero models only for hero shots), comfyui or manual asset brief as degraded tiers
79
+ agents:
80
+ - agent_id: video-producer-simao
81
+ role: Generate voice, b-roll, stills per shot list; post-process (remove_background / upscale / reframe); log credits spent
82
+ gate:
83
+ type: user_approval
84
+ description: User reviews generated assets BEFORE render — Higgsfield credits are metered; regeneration requires explicit approval, never a loop
85
+
86
+ - id: edit-render
87
+ name: Edit & Render
88
+ description: Hyperframes composition (HTML+GSAP motion graphics, word-level captions) and deterministic MP4 render, or the declared degraded path
89
+ agents:
90
+ - agent_id: video-producer-simao
91
+ role: Compose and render — /hyperframes workflow per format, GSAP timeline for motion graphics, embedded captions; state the tier actually used
92
+ gate:
93
+ type: auto
94
+ description: Proceeds to QA when the render (or edit-ready package) exists
95
+
96
+ - id: virality-qa
97
+ name: Virality & Technical QA
98
+ description: STEPPS audit and virality prediction plus technical quality control before the quality gate
99
+ agents:
100
+ - agent_id: viral-engineer-filipe
101
+ role: STEPPS audit + virality_predictor / video_analysis when Higgsfield is live (hook strength, retention risk)
102
+ - agent_id: video-producer-simao
103
+ role: Technical QC — sync, caption accuracy, aspect ratios, loudness
104
+ parallel: true
105
+ gate:
106
+ type: auto
107
+ description: QA findings attached to the quality-gate input
108
+
109
+ - id: quality-gate
110
+ name: Quality Gate
111
+ description: Mandatory pre-delivery review — binary verdict
112
+ model_override: opus
113
+ agents:
114
+ - agent_id: cqo-marta
115
+ role: Orchestrate review, aggregate verdicts, issue binary decision
116
+ - agent_id: copy-director-eduardo
117
+ role: Script, captions, title and description copy
118
+ parallel: true
119
+ - agent_id: tech-director-francisca
120
+ role: Render quality, spec compliance, delivery formats
121
+ parallel: true
122
+ gate:
123
+ type: quality_gate
124
+ required_verdict: APPROVED
125
+
126
+ - id: delivery
127
+ name: Delivery
128
+ description: Final package and repurposing spec
129
+ agents:
130
+ - agent_id: video-producer-simao
131
+ role: Master MP4 + 9:16 reframe + thumbnail + title/description/tags + SRT
132
+ - agent_id: repurpose-distributor-nuno
133
+ role: Repurposing spec (1 → 30+) and distribution calendar
134
+ parallel: true
135
+ gate:
136
+ type: auto
137
+ description: Package delivered
138
+ outputs:
139
+ - type: document
140
+ format: markdown
141
+ obsidian_path: "WizardingCode/Content/Video/"
142
+ description: Delivery manifest — files, metadata, repurposing spec, backend tiers used
@@ -28,6 +28,9 @@ phases:
28
28
  - agent_id: brand-strategist-mateus
29
29
  role: Differentiation angle, channel identity
30
30
  parallel: true
31
+ - agent_id: trends-analyst-margarida
32
+ role: Data-backed niche validation (demand volume, competition density)
33
+ parallel: true
31
34
  gate:
32
35
  type: user_approval
33
36
  description: User approves channel positioning
@@ -3,7 +3,7 @@ name: Diana
3
3
  role: Senior Frontend Developer
4
4
  department: dev
5
5
  tier: 2
6
- model: sonnet
6
+ model: opus
7
7
 
8
8
  behavioral_dna:
9
9
  disc:
@@ -23,7 +23,7 @@ function commandExists(cmd) {
23
23
  }
24
24
  }
25
25
 
26
- const checks = [
26
+ export const checks = [
27
27
  {
28
28
  name: "install-dir",
29
29
  description: "ArkaOS installation directory exists",
@@ -230,6 +230,61 @@ const checks = [
230
230
  },
231
231
  fix: () => "Run: npx arkaos keys set MAGIC_API_KEY <your-21st-dev-key> (or re-run npx arkaos@latest update)",
232
232
  },
233
+ // ─── Content production prerequisites (PR-C2) — all warn-only:
234
+ // video production is opt-in; the installer never fails on these and
235
+ // never installs the binaries itself (detect + instruct only).
236
+ {
237
+ name: "node-22-video",
238
+ description: "Node.js 22+ (required by Hyperframes video rendering)",
239
+ severity: "warn",
240
+ check: () => {
241
+ const major = parseInt(process.version.slice(1).split(".")[0], 10);
242
+ return Number.isFinite(major) && major >= 22;
243
+ },
244
+ fix: () => "Install Node.js 22+ (nvm install 22) — only needed for /content video rendering",
245
+ },
246
+ {
247
+ name: "ffmpeg",
248
+ description: "FFmpeg present (video encode/cut for Hyperframes + transcription workflows)",
249
+ severity: "warn",
250
+ check: () => commandExists("ffmpeg"),
251
+ fix: () => "Install FFmpeg: brew install ffmpeg (macOS) / apt install ffmpeg (Linux) / winget install Gyan.FFmpeg (Windows)",
252
+ },
253
+ {
254
+ name: "agent-reach",
255
+ description: "Agent-Reach CLI present (multi-platform source pulls for the content trend and research skills)",
256
+ severity: "warn",
257
+ check: () => commandExists("agent-reach"),
258
+ fix: () => "Install: pipx install agent-reach (or uv tool install agent-reach), then run: agent-reach doctor",
259
+ },
260
+ {
261
+ name: "hyperframes-skills",
262
+ description: "Hyperframes skills installed (video-as-code editing for /content video)",
263
+ severity: "warn",
264
+ check: () => {
265
+ // `npx skills add heygen-com/hyperframes` lands skills under
266
+ // ~/.claude/skills/<name>; the router skill is the sentinel.
267
+ return ["hyperframes", "hyperframes-core"].some((name) =>
268
+ existsSync(join(homedir(), ".claude", "skills", name, "SKILL.md"))
269
+ );
270
+ },
271
+ fix: () => "Run /content video-setup in Claude Code, or: npx skills add heygen-com/hyperframes --full-depth --yes",
272
+ },
273
+ {
274
+ name: "higgsfield-api-key",
275
+ description: "Higgsfield API key configured (image/video/audio generation engine)",
276
+ severity: "warn",
277
+ check: () => {
278
+ if (process.env.HIGGSFIELD_API_KEY) return true;
279
+ const keysPath = join(INSTALL_DIR, "keys.json");
280
+ if (!existsSync(keysPath)) return false;
281
+ try {
282
+ const keys = JSON.parse(readFileSync(keysPath, "utf-8"));
283
+ return !!keys.HIGGSFIELD_API_KEY;
284
+ } catch { return false; }
285
+ },
286
+ fix: () => "Run: npx arkaos keys set HIGGSFIELD_API_KEY <key> (https://higgsfield.ai) — needed for Higgsfield MCP generation",
287
+ },
233
288
  ];
234
289
 
235
290
  // ─── Windows-only checks ───────────────────────────────────────────────