The agent harness that makes small local models finish hard tasks — and prove it. Done is enforced by the engine, not the prompt: gates, rewinds, a judge, and a replayable Proof-of-Done receipt on every finished run. Any model in the socket. Local, sovereign, air-gapped-capable. macOS · Apple Silicon.
- capability exposure inferred + 35
- recent drift inferred + 20
- tool safety inferred + 12
- trust mitigators mixed − 3
inferred mixed
The A–E grade is our heuristic synthesis — a "review this" prompt, not a verdict. Each factor is tagged by what backs it: attested (a verifiable record), reported (a third party's claim), or inferred (our own heuristic, e.g. permissions). See methodology.
graded 9m ago · see ecosystem CVEs →
- C · 57 → D · 64
- D · 60 → C · 57
- C · 52 → D · 60
No known CVEs for this server.
- high dangerous code
dynamic exec: new Function(), indirect eval · obfuscated payload: dynamic require()/import()
analyzed commit 33d10b0 · analyzer v28 · 3d ago
skills & prompt files 43
- agent-rules sergezuber-FABULA-LLM-5-33d10b0/engine/AGENTS.md
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/agent/prompt/checkpoint-writer.txt
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/agent/prompt/compaction.txt
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/agent/prompt/distill.txt
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/agent/prompt/dream.txt
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/agent/prompt/explore.txt
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/agent/prompt/summary.txt
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/agent/prompt/title.txt
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/session/prompt/anthropic.txt
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/session/prompt/beast.txt
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/session/prompt/build-switch.txt
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/session/prompt/codex.txt
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/session/prompt/compose.txt
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/session/prompt/copilot-gpt-5.txt
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/session/prompt/default.txt
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/session/prompt/gemini.txt
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/session/prompt/gpt.txt
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/session/prompt/kimi.txt
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/session/prompt/max-steps.txt
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/session/prompt/trinity.txt
- skill sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/skill/builtin/.bundle/git-commits-and-prs/SKILL.md
- skill sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/skill/builtin/.bundle/self-extend/SKILL.md
- skill sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/skill/compose/.bundle/ask/SKILL.md
- skill sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/skill/compose/.bundle/brainstorm/SKILL.md
- skill sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/skill/compose/.bundle/debug/SKILL.md
- skill sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/skill/compose/.bundle/execute/SKILL.md
- skill sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/skill/compose/.bundle/feedback/SKILL.md
- skill sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/skill/compose/.bundle/merge/SKILL.md
- skill sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/skill/compose/.bundle/new-skill/SKILL.md
- skill sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/skill/compose/.bundle/parallel/SKILL.md
- skill sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/skill/compose/.bundle/plan/SKILL.md
- skill sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/skill/compose/.bundle/report/SKILL.md
- skill sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/skill/compose/.bundle/review/SKILL.md
- skill sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/skill/compose/.bundle/subagent/SKILL.md
- skill sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/skill/compose/.bundle/tdd/SKILL.md
- skill sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/skill/compose/.bundle/verify/SKILL.md
- skill sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/skill/compose/.bundle/worktree/SKILL.md
- agent-rules sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/test/AGENTS.md
- skill sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/test/fixture/skills/agents-sdk/SKILL.md
- skill sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/test/fixture/skills/cloudflare/SKILL.md
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/prompts/agent-rules.md
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/prompts/runtime-tools-addendum.md
- prompt-file sergezuber-FABULA-LLM-5-33d10b0/system-prompt.example.md
danger signals18
- dynamic code execution new Function() sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/src/cli/cmd/debug/agent.ts :110
return new Function(`return (${trimmed})`)() - dynamic code execution new Function() sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/test/cli/cmd/receipt-identity.test.ts :50
return new Function("__d", "createHash", `const __canon = JSON.stringify(${expr}); return ${hashExpr}`)(d, createHash) as string - dynamic code execution indirect eval sergezuber-FABULA-LLM-5-33d10b0/plugin/fabula-browser.ts :170
const res = await _page.evaluate((e: string) => { try { return JSON.stringify((0, eval)(e)) } catch (err: any) { return "eval error: " + err.message } }, args.eval) - suspicious endpoint 100.100.100.200 (cloud metadata) sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/test/util/ssrf.test.ts :24
await expect(assertSafeUrl("http://100.100.100.200/")).rejects.toThrow("SSRF protection") - suspicious endpoint 8.8.8.8 sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/test/util/ssrf.test.ts :67
await expect(assertSafeUrl("http://8.8.8.8/")).resolves.toBeUndefined() - suspicious endpoint 172.32.0.1 sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/test/util/ssrf.test.ts :68
await expect(assertSafeUrl("http://172.32.0.1/")).resolves.toBeUndefined() - suspicious endpoint 93.184.216.34 sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/test/util/ssrf.test.ts :69
await expect(assertSafeUrl("http://93.184.216.34/")).resolves.toBeUndefined() - suspicious endpoint 169.254.169.254 (cloud metadata) sergezuber-FABULA-LLM-5-33d10b0/engine/packages/opencode/test/util/ssrf.test.ts :86
headers: { Location: "http://169.254.169.254/latest/meta-data/" }, - suspicious endpoint us.i.posthog.com (telemetry) sergezuber-FABULA-LLM-5-33d10b0/engine/script/stats.ts :11
const response = await fetch("https://us.i.posthog.com/i/v0/e/", { - suspicious endpoint 169.254.169.254 (cloud metadata) sergezuber-FABULA-LLM-5-33d10b0/plugin/__tests__/corner-execute-code.test.ts :279
["cloud metadata IP", "python", "import urllib.request\nurllib.request.urlopen('http://169.254.169.254/latest/meta-data/')", "cloud_metadata"], - suspicious endpoint 169.254.169.254 (cloud metadata) sergezuber-FABULA-LLM-5-33d10b0/plugin/__tests__/corner-hooks-security.test.ts :129
await expectBlocked("web_fetch", { url: "http://169.254.169.254/latest/meta-data/" }, "ssrf:cloud_metadata") - suspicious endpoint 169.254.169.254 (cloud metadata) sergezuber-FABULA-LLM-5-33d10b0/plugin/__tests__/corner-security-libs.test.ts :166
expect(checkUrlSync("http://169.254.169.254/latest/meta-data/").code).toBe("cloud_metadata") - suspicious endpoint 8.8.8.8 sergezuber-FABULA-LLM-5-33d10b0/plugin/__tests__/corner-security-libs.test.ts :175
expect(checkUrlSync("https://8.8.8.8/").blocked).toBe(false) - suspicious endpoint 169.254.169.254 (cloud metadata) sergezuber-FABULA-LLM-5-33d10b0/plugin/__tests__/fabula-browser.test.ts :29
expect(out(await T.browser_navigate.execute({ url: "http://169.254.169.254/", description: "x" }))).toContain("BLOCKED") - suspicious endpoint 169.254.169.254 (cloud metadata) sergezuber-FABULA-LLM-5-33d10b0/plugin/__tests__/fabula-security.wiring.test.ts :42
await expectBlocked("web_fetch", { url: "http://169.254.169.254/latest/meta-data/" }, "ssrf") - suspicious endpoint 169.254.169.254 (cloud metadata) sergezuber-FABULA-LLM-5-33d10b0/plugin/__tests__/fabula-tools.safefetch.test.ts :15
res.writeHead(302, { Location: "http://169.254.169.254/latest/meta-data/" }); res.end(); return - suspicious endpoint 169.254.169.254 (cloud metadata) sergezuber-FABULA-LLM-5-33d10b0/plugin/lib/codeguard.test.ts :9
expect(scanCode("python", "import urllib.request; urllib.request.urlopen('http://169.254.169.254/')").blocked).toBe(true) - suspicious endpoint 169.254.169.254 (cloud metadata) sergezuber-FABULA-LLM-5-33d10b0/plugin/lib/security.test.ts :28
expect(checkUrlSync("http://169.254.169.254/latest/meta-data/").blocked).toBe(true)
- recent drift +20 capability drift →
Heuristic, inferred signals — false positives (legitimately powerful tools, forks, language ports) are expected. Treat each as "review this", not a verdict. See the ecosystem-wide picture on the security hub, or the fleet security of sergezuber.