m2-market/solutions/agent-scaffold/solution.json
m2 (AI Agent) 25b36e9ffb wedge: US2 wave converged — T027 publish cmd, T029/T030 seeds (schema-valid, scrubbed); T031 blocked on operator
t031 worker found ZERO real competitor-scan evidence and correctly built
nothing (constitution III). Recommended substitute: Parlobyg email-triage
(real production run 2026-03-15..04-04) — tenant-derived, requires operator
owner-initiation + double scrub (constitution IV). Recorded as open question.
Tenant-named hosts scrubbed from agent-scaffold evidence. 29 tests green.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 03:51:27 +02:00

98 lines
No EOL
6.1 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"schema_version": "m2.solution.v1",
"solution_id": "sol_agent-scaffold",
"name": "Agent Scaffold Generator",
"summary": "Scaffold OpenClaw/Hermes agent workspaces (PRD.md + SOUL.md + MEMORY.md) from m2-memory context.",
"description": "Installs the agent-scaffold skill: given an agent name and a one-line description, it queries m2-memory (agent.memory.system / memory-api) for relevant context and generates a complete agent workspace — PRD.md (problem, personas, functional requirements, success metrics), SOUL.md (identity, values, communication style, scope boundaries), and MEMORY.md (seed memories pre-loaded from the search results) — plus a deploy snippet for OpenClaw or Hermes. Ships two artifacts: SKILL.md and scripts/scaffold.py (a single-file Python script using only the stdlib, talking HTTP to memory-api). Requirement: the buyer machine needs memory-api (m2-memory) network access for full function — scripts/scaffold.py calls M2_MEMORY_API_URL (default http://172.18.0.20:8000, override via env) at /memory/search. Without reachable memory-api the script still runs and produces PRD.md/SOUL.md, but with an empty 'Relevant Memory Context' section and no MEMORY.md content — degraded, not blocked. content_hash is computed over payload/ + recipe.yaml only (not solution.json itself, to avoid the self-referential hash problem of hashing a file that contains its own hash): sha256 of `tar --sort=name --mtime='@0' --owner=0 --group=0 --numeric-owner -czf - payload recipe.yaml` run from this bundle's root.",
"intent": "Give an operator a reproducible way to stand up (or reconstruct) a new agent's working context — PRD + identity + seed memory — from what the fleet's memory system already knows, instead of starting from a blank page.",
"behavior": {
"skill_ref": "payload/SKILL.md"
},
"tools": [
{
"name": "memory-api",
"kind": "http-api",
"required": true
},
{
"name": "python3",
"kind": "cli",
"required": true
}
],
"runtime": {
"surfaces": [
"claude-code-skill"
]
},
"permissions": [
{
"action": "write",
"target": "~/.claude/skills/agent-scaffold/"
},
{
"action": "write",
"target": "~/agents/<agent-name>/ (PRD.md, SOUL.md, MEMORY.md — output of running the skill, not part of the install)"
},
{
"action": "net",
"target": "HTTP POST to the configured M2_MEMORY_API_URL /memory/search endpoint"
}
],
"deployment": {
"recipe_ref": "recipe.yaml",
"entrypoint": "Ask your agent to use the agent-scaffold skill, or run: python3 ~/.claude/skills/agent-scaffold/scripts/scaffold.py <agent-name> \"<description>\"",
"verify_command": "test -f ~/.claude/skills/agent-scaffold/SKILL.md"
},
"applicability": {
"image_classes": [
"primus",
"agent-latest"
],
"roles": [
"operator",
"desktop-agent"
],
"tool_requirements": [
"python3",
"memory-api"
]
},
"tenant_scope": "m2-core",
"evidence": [
{
"source": "/home/m2/.claude/skills/agent-scaffold/ (SKILL.md, scripts/scaffold.py) — the proven skill this bundle packages, present on the m2 host since 2026-04-20 (SKILL.md mtime 2026-04-20T22:48:00+02:00, scripts/scaffold.py mtime 2026-04-28T00:33:10+02:00 — a later revision of the same script)",
"machine": "m2",
"excerpt": "SKILL.md frontmatter: 'Scaffolds OpenClaw/Hermes agent workspaces from m2-memory. Query memory for context, generate PRD.md + SOUL.md for a new agent, and optionally wire into the fleet.'"
},
{
"source": "/home/m2/gmi-clinic/agents/{admin-data-bridge,clinical-entity-extraction,drg-los-optimizer}/{PRD.md,SOUL.md} — three real PRD+SOUL agent-workspace pairs on disk, all created 2026-04-20 22:46:2722:47:19 (mtimes), roughly one minute before this skill's own SKILL.md mtime (22:48:00) — the exact PRD.md/SOUL.md workspace shape this skill formalizes and automates, produced for the GMI Clinic AI fleet deployment immediately prior to the skill being written",
"machine": "m2",
"excerpt": "admin-data-bridge/SOUL.md: 'You are the Admin Data Bridge for GMI Clinic... ## Values ## Communication style ## Scope boundaries' — same section structure generate_soul() in scaffold.py emits"
},
{
"source": "/home/m2/gmi-clinic/agents/gesy-research/PRD.md — a fourth real workspace, mtime 2026-04-20T22:47:48+02:00, whose own text names the exact incident SKILL.md's 'Design principle' section cites as the skill's reason for existing: 'On 2026-04-08, Nasr ran 4 parallel research agents on his machine... The output was intended to be stored in m2-memory, Planka, and Forgejo but the storage step failed (m2 errored). This PRD reconstructs the agent's purpose and gaps so the research can be completed and properly stored.'",
"machine": "m2",
"excerpt": "SKILL.md: 'The goal is reproducibility: if an agent's context is lost (like Nasr's Apr 8 research agents), this skill can reconstruct the workspace from the vector store and hand it to OpenClaw or Hermes to re-execute without starting from scratch.'"
},
{
"source": "/home/m2/agent-restore-harness/agents/*/SOUL.md — three further real SOUL.md agent-identity files for actual named fleet agents (machine names withheld from shared catalog per tenant-firewall hygiene), mtimes 2026-04-22T23:412026-04-23T00:48, confirming the PRD+SOUL workspace pattern stayed in production use after the skill was written, not a one-off",
"machine": "m2",
"excerpt": "nasr/SOUL.md: 'You are Nasr's digital twin — his AI counterpart in the Machine.Machine fleet... ## Core Capabilities'"
}
],
"content_hash": "sha256:202aaff5519e774e2669bd2ca6220fc67284a506775a90ff7710fb2361cc58ee",
"price": {
"amount": 60,
"currency": "m2cr",
"model": "fixed"
},
"seller": "sdjs-operator",
"license": {
"terms": "Perpetual use on operator-owned machines for the buyer's own agent-workspace generation; no redistribution of the skill files as a standalone product.",
"major_version_coverage": true
},
"revenue_split": {
"platform_pct": 10
}
}