Durable multi-agent harness for Claude Code: task-board MCP, persistent tmux agents, a memory state machine, and supervision daemons.
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
transport stdio counts 27 tools · 0 res
· 0 prompts
permission surface via code analysis
tools
-
ack_directed_message
-
challenge_memory
-
claim_task
-
clear_status
-
close_subagent
-
complete_task
-
consolidate_memories
-
create_task
-
delegate_task
-
get_boot_briefing
-
get_memory_health_report
-
interrupt_agent
-
list_tasks
-
nudge_agent
-
pin_memory
-
poll_directed_messages
-
promote_memory
-
query_audit_log
-
read_status
-
recall_memories
-
save_memory
-
send_directed_message
-
send_note
-
spawn_subagent
-
supersede_memory
-
write_handoff
-
write_status
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit 79850e7 · analyzer v33 · 3d ago
skills & prompt files 23
- agent-rules 0xAddict-threadwork-79850e7/CLAUDE.md
- skill 0xAddict-threadwork-79850e7/skills/agent-taskboard-conventions/SKILL.md
- skill 0xAddict-threadwork-79850e7/skills/council/SKILL.md
- skill 0xAddict-threadwork-79850e7/skills/elevenlabs-tts/SKILL.md
- skill 0xAddict-threadwork-79850e7/skills/evidence-investigate/SKILL.md
- skill 0xAddict-threadwork-79850e7/skills/fable-harness/SKILL.md
- skill 0xAddict-threadwork-79850e7/skills/grill-me/SKILL.md
- skill 0xAddict-threadwork-79850e7/skills/harness-contract/SKILL.md
- skill 0xAddict-threadwork-79850e7/skills/harness/SKILL.md
- skill 0xAddict-threadwork-79850e7/skills/mcp-restart-ceremony/SKILL.md
- skill 0xAddict-threadwork-79850e7/skills/nike/SKILL.md
- skill 0xAddict-threadwork-79850e7/skills/orchestrator-template/SKILL.md
- skill 0xAddict-threadwork-79850e7/skills/premortem/SKILL.md
- skill 0xAddict-threadwork-79850e7/skills/recycle/SKILL.md
- skill 0xAddict-threadwork-79850e7/skills/spec-gate/SKILL.md
- skill 0xAddict-threadwork-79850e7/skills/structured-image-gen/SKILL.md
- skill 0xAddict-threadwork-79850e7/skills/task-delegation/SKILL.md
- skill 0xAddict-threadwork-79850e7/skills/telegram-access/SKILL.md
- skill 0xAddict-threadwork-79850e7/skills/timer/SKILL.md
- skill 0xAddict-threadwork-79850e7/skills/voice-transcribe/SKILL.md
- skill 0xAddict-threadwork-79850e7/skills/watchdog-monitor/SKILL.md
- skill 0xAddict-threadwork-79850e7/skills/workctl/SKILL.md
- skill 0xAddict-threadwork-79850e7/skills/workctl/workctl-operator/SKILL.md
danger signals6
- suspicious endpoint api.telegram.org 0xAddict-threadwork-79850e7/managed-bots.ts :6
const TELEGRAM_API = 'https://api.telegram.org/bot' - suspicious endpoint t.me 0xAddict-threadwork-79850e7/managed-bots.ts :183
return `https://t.me/newbot/${manager_username}/${suggested_username}` - suspicious endpoint api.telegram.org 0xAddict-threadwork-79850e7/mcp-servers/task-board/notify.ts :25
await fetch(`https://api.telegram.org/bot${token}/sendMessage`, { - suspicious endpoint api.telegram.org 0xAddict-threadwork-79850e7/notify.ts :304
const res = await fetch(`https://api.telegram.org/bot${token}/sendMessage`, { - suspicious endpoint api.telegram.org 0xAddict-threadwork-79850e7/snoopy-bot.ts :33
await fetch(`https://api.telegram.org/bot${token}/sendMessage`, { - suspicious endpoint t.me 0xAddict-threadwork-79850e7/tests/managed-bots.test.ts :115
expect(link).toBe('https://t.me/newbot/taskrunner1bot/my_new_bot')
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 390
filesystem 198
- fs (weak) 0xAddict-threadwork-79850e7/artifacts/10060825/harness/build_sample.ts :32
import { writeFileSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/artifacts/gap4/harness/sweep_gap4.ts :27
import { readFileSync, writeFileSync, rmSync } from 'fs' - fs 0xAddict-threadwork-79850e7/bin/tw-team-digest.ts :11
import { existsSync } from "fs"; - fs 0xAddict-threadwork-79850e7/consolidate.ts :8
import { mkdirSync, writeFileSync } from 'fs' - fs 0xAddict-threadwork-79850e7/db.ts :2566
const fs = require('fs') - fs 0xAddict-threadwork-79850e7/dense.ts :26
import { readFileSync } from 'fs' - fs 0xAddict-threadwork-79850e7/inhibit-engine.ts :13
import { readFileSync, statSync, existsSync, appendFileSync } from 'fs' - fs 0xAddict-threadwork-79850e7/mcp-servers/task-board/consolidate.ts :6
import { mkdirSync, writeFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/mcp-servers/task-board/tests/audit.test.ts :4
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/mcp-servers/task-board/tests/consolidate.test.ts :5
import { unlinkSync, existsSync, mkdirSync, readFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/mcp-servers/task-board/tests/db.test.ts :3
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/mcp-servers/task-board/tests/integration.test.ts :5
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/mcp-servers/task-board/tests/memory.test.ts :4
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/mcp-servers/task-board/tests/watchdog.test.ts :5
import { unlinkSync } from 'fs' - fs 0xAddict-threadwork-79850e7/notify.ts :2
import { existsSync, readFileSync } from 'fs' - fs 0xAddict-threadwork-79850e7/parked-picker-classifier.ts :20
import { readFileSync, statSync, existsSync, appendFileSync, mkdirSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/scripts/run-migration.ts :14
import { readFileSync } from 'fs' - fs 0xAddict-threadwork-79850e7/src/alert-review/emit-log.ts :16
import { appendFileSync, existsSync, mkdirSync } from 'fs' - fs 0xAddict-threadwork-79850e7/src/alert-review/index.ts :20
import { readFileSync, writeFileSync, existsSync, mkdirSync, appendFileSync } from 'fs' - fs 0xAddict-threadwork-79850e7/src/dedup/fingerprint.ts :16
import { readFileSync, writeFileSync, existsSync, mkdirSync } from 'fs' - fs 0xAddict-threadwork-79850e7/src/escalation-bridge/index.ts :26
} from 'fs' - fs 0xAddict-threadwork-79850e7/src/grouping/index.ts :21
import { writeFileSync, mkdirSync, existsSync, readdirSync, unlinkSync, statSync } from 'fs' - fs 0xAddict-threadwork-79850e7/src/loop-detector/index.ts :18
import { readFileSync, writeFileSync, existsSync, mkdirSync, renameSync, unlinkSync } from 'fs' - fs 0xAddict-threadwork-79850e7/src/restart-cap/tracker.ts :11
import { readFileSync, writeFileSync, existsSync, mkdirSync } from 'fs' - fs 0xAddict-threadwork-79850e7/src/silences/index.ts :21
import { readFileSync, writeFileSync, existsSync, mkdirSync, appendFileSync, statSync, renameSync } from 'fs' - fs 0xAddict-threadwork-79850e7/src/urgency-routing/index.ts :20
import { readFileSync, writeFileSync, existsSync, mkdirSync, statSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/addendum.test.ts :5
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/agent-family-registry.test.ts :14
import { existsSync, mkdtempSync, readFileSync, rmSync, writeFileSync } from 'node:fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/agent-messages-concurrency.test.ts :29
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/agent-messages.test.ts :15
import { unlinkSync, readFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/alert-review/ambiguous-classification.test.ts :6
import { mkdtempSync, rmSync, writeFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/alert-review/boss-not-human.test.ts :6
import { mkdtempSync, rmSync, writeFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/alert-review/configurable-cron.test.ts :6
import { mkdtempSync, rmSync, readFileSync, existsSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/alert-review/delivery-and-read-receipt.test.ts :6
import { mkdtempSync, rmSync, existsSync, readFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/alert-review/emit-log-contract.test.ts :5
import { mkdtempSync, rmSync, readFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/alert-review/emit-log-coverage.test.ts :11
import { mkdtempSync, rmSync, readFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/alert-review/empty-week.test.ts :6
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/alert-review/fp-classification.test.ts :6
import { mkdtempSync, rmSync, writeFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/alert-review/persistent-classification.test.ts :6
import { mkdtempSync, rmSync, writeFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/alert-review/rec-fp-rate.test.ts :7
import { mkdtempSync, rmSync, appendFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/alert-review/rec-persistent.test.ts :7
import { mkdtempSync, rmSync, appendFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/alert-review/rec-suppress-count.test.ts :6
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/alert-review/rec-zero-when-healthy.test.ts :6
import { mkdtempSync, rmSync, appendFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/alert-review/report-sections.test.ts :6
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/alert-review/top-silenced-unique.test.ts :6
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/alert-review/tp-classification.test.ts :6
import { mkdtempSync, rmSync, writeFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/audit.test.ts :4
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/autonomous-board-schema.test.ts :3
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/blocked-ttl.test.ts :5
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/consolidate.test.ts :6
import { unlinkSync, existsSync, mkdirSync, readFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/consolidator-reward-hook.test.ts :22
import { unlinkSync } from 'node:fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/consolidator.test.ts :6
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/cross-family-critique-critique-position-integration.test.ts :28
import { mkdtempSync, mkdirSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/cross-family-critique-p6-integration.test.ts :22
import { unlinkSync } from 'node:fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/cross-family-critique.test.ts :39
import { readFileSync, unlinkSync } from 'node:fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/db.test.ts :3
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/debrief.test.ts :18
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/decision-monitor.test.ts :7
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/decision.test.ts :5
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/dedup/clock-skew-fallthrough.test.ts :5
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/dedup/concurrent-flock.test.ts :5
import { mkdtempSync, rmSync, writeFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/dedup/cooldown-expiry.test.ts :5
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/dedup/corrupted-file.test.ts :5
import { mkdtempSync, rmSync, writeFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/dedup/different-fingerprints.test.ts :5
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/dedup/env-hot-reload.test.ts :5
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/dedup/meta-alert-at-12.test.ts :5
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/dedup/raw-reason-distinct.test.ts :5
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/dedup/restart-persistence.test.ts :5
import { mkdtempSync, rmSync, existsSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/dedup/same-alert-suppressed.test.ts :5
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/dedup/state-transition-flush.test.ts :5
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/delegation-brief.test.ts :24
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/dense.test.ts :16
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/escalation-bridge/all-paths-failed.test.ts :6
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/escalation-bridge/audit-first-ordering.test.ts :6
import { mkdtempSync, rmSync, readFileSync, existsSync, chmodSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/escalation-bridge/boss-note-coalesce.test.ts :6
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/escalation-bridge/episode-reset.test.ts :6
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/escalation-bridge/multi-instance-flock.test.ts :6
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/escalation-bridge/nudge-template-empty-status.test.ts :6
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/escalation-bridge/parked-picker-pause.test.ts :6
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/escalation-bridge/per-agent-enable.test.ts :6
import { mkdtempSync, rmSync, writeFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/escalation-bridge/sqlite-fallback.test.ts :5
import { mkdtempSync, rmSync, readFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/escalation-bridge/step1-nudge.test.ts :6
import { mkdtempSync, rmSync, readFileSync, existsSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/escalation-bridge/step2-interrupt.test.ts :5
import { mkdtempSync, rmSync, readFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/escalation-bridge/step2-safeguard.test.ts :6
import { mkdtempSync, rmSync, readFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/escalation-bridge/step3-boss-note.test.ts :5
import { mkdtempSync, rmSync, readFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/failure-classification-escalation-integration.test.ts :25
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/failure-classification-verify-integration.test.ts :39
} from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/failure-classification-watchdog-integration.test.ts :24
import { readFileSync, unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/failure-classification.test.ts :14
import { readFileSync } from 'node:fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/fixtures/concurrency-barrier.test.ts :17
import { readFileSync, unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/grouping/file-rotation.test.ts :8
import { mkdtempSync, rmSync, readdirSync, writeFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/grouping/large-group-file-dump.test.ts :8
import { mkdtempSync, rmSync, readFileSync, existsSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/guardrails/cross-family-critique-position-regression-lock.test.ts :31
import { mkdtempSync, mkdirSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/guardrails/cross-family-critique-scope-bleed.test.ts :31
import { readFileSync } from 'node:fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/guardrails/escalation-bridge-onfailureclassified-wired.test.ts :53
import { readdirSync, readFileSync, statSync } from 'node:fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/guardrails/no-direct-nudge-paths.test.ts :2
import { readdirSync, readFileSync, statSync } from 'node:fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/guardrails/no-nudge-agent-signature-drift.test.ts :32
import { readFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/guardrails/pf1-4-wiring.guard.test.ts :69
import { readFileSync } from 'node:fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/guardrails/pf2-5-wiring.guard.test.ts :33
import { readFileSync } from 'node:fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/guardrails/retention-prune-hwm-isolation.guard.test.ts :16
import { readFileSync } from 'node:fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/guardrails/retention-prune-imports.guard.test.ts :18
import { readFileSync } from 'node:fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/guardrails/retention-prune-watchdog.guard.test.ts :14
import { readFileSync } from 'node:fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/guardrails/t3-cross-family-critique-scope-bleed.test.ts :14
import { readFileSync } from 'node:fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/guardrails/t3-epic03-decision-scope-bleed.test.ts :19
import { readFileSync } from 'node:fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/guardrails/ternary-reward-scope-bleed.test.ts :29
import { readFileSync } from 'node:fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/hooks/hook-sanitization.test.ts :26
import { unlinkSync, mkdtempSync, mkdirSync, copyFileSync, existsSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/hooks/ko3-rehydrate.test.ts :43
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/idle-nudge.test.ts :7
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/inhibit/hot-reload.test.ts :5
import { mkdtempSync, writeFileSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/inhibit/malformed-json.test.ts :5
import { mkdtempSync, writeFileSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/inhibit/session-dead-stuck.test.ts :10
import { mkdtempSync, readFileSync, existsSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/integration.test.ts :5
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/loop-detector/alternating-no-trigger.test.ts :6
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/loop-detector/boot-guard.test.ts :6
import { mkdtempSync, rmSync, readFileSync, existsSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/loop-detector/consecutive-n-trigger.test.ts :5
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/loop-detector/empty-sentinel.test.ts :6
import { mkdtempSync, rmSync, readFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/loop-detector/gap-handling.test.ts :6
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/loop-detector/idle-excluded.test.ts :5
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/loop-detector/parked-picker-excluded.test.ts :5
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/loop-detector/pipeline-integration.test.ts :7
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/loop-detector/progress-flag-not-recovery.test.ts :5
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/loop-detector/recovery-on-hash-differ.test.ts :5
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/loop-detector/restart-resilience.test.ts :6
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/loop-detector/windowed-supermajority.test.ts :5
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/managed-bots.test.ts :4
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/memory-handlers.test.ts :11
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/memory-integrity-cli.test.ts :17
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/memory-integrity.test.ts :9
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/memory-ordering-concurrency.test.ts :24
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/memory-ordering.test.ts :11
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/memory-sanitization-flag.test.ts :6
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/memory.test.ts :4
import { unlinkSync, readFileSync, existsSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/memory_debrief_demote.test.ts :16
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/migrations/0009_state_contracts.test.ts :3
import { copyFileSync, unlinkSync, readFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/nudge.test.ts :2
import { readFileSync } from 'node:fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/null-agent-guard.test.ts :17
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/parked-picker/other-subtype.test.ts :5
import { mkdtempSync, writeFileSync, readFileSync, existsSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/parked-picker/plan-mode.test.ts :5
import { mkdtempSync, writeFileSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/parked-picker/scrollback-negative.test.ts :5
import { mkdtempSync, writeFileSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/parked-picker/signature-hot-reload.test.ts :5
import { mkdtempSync, writeFileSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/parked-picker/stale-one-shot.test.ts :5
import { mkdtempSync, writeFileSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/parked-picker/stale-ttl.test.ts :5
import { mkdtempSync, writeFileSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/parked-picker/tool-permission.test.ts :5
import { mkdtempSync, writeFileSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/probes/d3-acceptance.ts :26
import { readdirSync, readFileSync, statSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/reflection/outcome-feedback.test.ts :2
import { readFileSync, unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/reflection/pf1-4-sequence-behavior.test.ts :27
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/restart-window-suppression.test.ts :16
import { unlinkSync, mkdirSync, writeFileSync, utimesSync, existsSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/retention-prune-server.test.ts :14
import { mkdtempSync, mkdirSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/retention-prune.test.ts :11
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/reward-consumer.test.ts :20
import { readFileSync, unlinkSync } from 'node:fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/server-pf2-watcher-tools-integration.test.ts :22
import { mkdtempSync, mkdirSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/silences/audit-log-rotation.test.ts :8
import { mkdtempSync, rmSync, writeFileSync, existsSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/silences/empty-matchers-rejected.test.ts :7
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/silences/eq-matcher.test.ts :8
import { mkdtempSync, rmSync, readFileSync, existsSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/silences/expiration-cleanup.test.ts :8
import { mkdtempSync, rmSync, readFileSync, existsSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/silences/group-disposed-pre-flush.test.ts :9
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/silences/group-member-removed.test.ts :9
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/silences/hot-reload.test.ts :8
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/silences/invalid-window-rejected.test.ts :7
import { mkdtempSync, rmSync, writeFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/silences/overlapping-independent.test.ts :8
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/silences/regex-matcher-js.test.ts :9
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/silences/resolved-not-silenced.test.ts :8
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/sprint-c1-card-statemachine.test.ts :4
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/sprint-c2-park-prep.test.ts :5
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/sprint3-integration.test.ts :7
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/state-contracts-migration.test.ts :4
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/state-contracts.test.ts :4
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/subagent-attribution.test.ts :5
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/t3-epic02-critique-position-attribution.test.ts :29
import { mkdtempSync, mkdirSync, rmSync, readFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/t3-epic03-critique-attribution.test.ts :20
import { mkdtempSync, mkdirSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/t3-epic05-attribution-reeval.test.ts :13
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/t3-epic06-activation.test.ts :18
import { mkdtempSync, mkdirSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/ternary-reward-finalize-integration.test.ts :19
import { mkdtempSync, mkdirSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/ternary-reward-p6p7-integration.test.ts :25
import { unlinkSync } from 'node:fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/ternary-reward.test.ts :33
import { readFileSync, unlinkSync } from 'node:fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/tw-team-digest.test.ts :13
import { existsSync, mkdirSync, writeFileSync } from "fs"; - fs (weak) 0xAddict-threadwork-79850e7/tests/urgency-routing/critical-dedup-backoff.test.ts :9
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/urgency-routing/critical-dedup-reset.test.ts :8
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/urgency-routing/critical-routing.test.ts :9
import { mkdtempSync, rmSync, writeFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/urgency-routing/first-match-wins.test.ts :8
import { mkdtempSync, rmSync, writeFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/urgency-routing/group-severity-invariant.test.ts :8
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/urgency-routing/hot-reload.test.ts :7
import { mkdtempSync, rmSync, writeFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/urgency-routing/info-routing.test.ts :7
import { mkdtempSync, rmSync, writeFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/urgency-routing/multi-severity-same-tick.test.ts :8
import { mkdtempSync, rmSync, writeFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/urgency-routing/push-fallback.test.ts :8
import { mkdtempSync, rmSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/urgency-routing/warning-routing.test.ts :7
import { mkdtempSync, rmSync, writeFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/watchdog-pf2-evaluate-watchers.test.ts :2
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/watchdog-spam-fix.test.ts :8
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/watchdog.test.ts :5
import { unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/watchers/pf2-audit-and-stub.test.ts :2
import { readFileSync, unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/watchers/pf2-create-validate.test.ts :2
import { readFileSync, unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/watchers/pf2-evaluators.test.ts :2
import { readFileSync, unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/watchers/pf2-firing.test.ts :2
import { readFileSync, unlinkSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/watchers/pf2-idempotency-key.test.ts :2
import { readFileSync } from 'fs' - fs (weak) 0xAddict-threadwork-79850e7/tests/watchers/pf2-schema.test.ts :2
import { readFileSync, unlinkSync } from 'fs' - fs 0xAddict-threadwork-79850e7/verification/agent-family-registry.ts :31
import * as fs from 'node:fs' - fs 0xAddict-threadwork-79850e7/verification/verify.ts :6
import { existsSync, readFileSync, writeFileSync } from 'fs' - fs 0xAddict-threadwork-79850e7/watchdog.ts :8
import { statSync } from 'fs'
shell / exec 36
- shell (weak) 0xAddict-threadwork-79850e7/artifacts/10060825/harness/build_sample.ts :33
import { execSync } from 'child_process' - shell (weak) 0xAddict-threadwork-79850e7/artifacts/gap4/harness/sweep_gap4.ts :28
import { execSync } from 'child_process' - shell 0xAddict-threadwork-79850e7/mcp-servers/task-board/nudge.ts :22
const proc = Bun.spawn(cmd, { stdout: 'pipe', stderr: 'pipe' }) - shell (weak) 0xAddict-threadwork-79850e7/mcp-servers/task-board/tests/consolidate.test.ts :20
try { Bun.spawnSync(['rm', '-rf', TEST_BRIEFING_DIR]) } catch {} - shell 0xAddict-threadwork-79850e7/mcp-servers/task-board/watchdog.ts :47
const proc = Bun.spawnSync(['tmux', 'has-session', '-t', session], { stdout: 'pipe', stderr: 'pipe' }) - shell 0xAddict-threadwork-79850e7/nudge.ts :139
proc = Bun.spawn(argv, { stdout: 'pipe', stderr: 'pipe' }) - shell (weak) 0xAddict-threadwork-79850e7/tests/agent-messages-concurrency.test.ts :6
// Uses `Bun.spawn()` to launch REAL OS processes (never worker_threads) so - shell (weak) 0xAddict-threadwork-79850e7/tests/consolidate.test.ts :21
try { Bun.spawnSync(['rm', '-rf', TEST_BRIEFING_DIR]) } catch {} - shell (weak) 0xAddict-threadwork-79850e7/tests/failure-classification-verify-integration.test.ts :147
const proc = Bun.spawnSync(['bun', VERIFY_TS_PATH], { - shell (weak) 0xAddict-threadwork-79850e7/tests/failure-classification.test.ts :1078
proc = Bun.spawnSync(['git', '-C', REPO, 'diff', '--name-only', BASE_COMMIT], { cwd: REPO }) - shell (weak) 0xAddict-threadwork-79850e7/tests/fixtures/concurrent-challenge-worker.ts :4
// Spawned via `Bun.spawn()` (a REAL separate OS process, not a worker_thread) - shell (weak) 0xAddict-threadwork-79850e7/tests/fixtures/concurrent-poll-worker.ts :4
// Spawned via `Bun.spawn()` (a REAL separate OS process, not a worker_thread) - shell (weak) 0xAddict-threadwork-79850e7/tests/fixtures/concurrent-save-memory-worker.ts :4
// Spawned via `Bun.spawn()` (a REAL separate OS process, not a worker_thread) - shell (weak) 0xAddict-threadwork-79850e7/tests/fixtures/concurrent-send-message-worker.ts :4
// Spawned via `Bun.spawn()` (a REAL separate OS process, not a worker_thread) - shell (weak) 0xAddict-threadwork-79850e7/tests/fixtures/concurrent-supersede-worker.ts :4
// Spawned via `Bun.spawn()` (a REAL separate OS process, not a worker_thread) - shell (weak) 0xAddict-threadwork-79850e7/tests/guardrails/cross-family-critique-scope-bleed.test.ts :30
import { execSync } from 'node:child_process' - shell (weak) 0xAddict-threadwork-79850e7/tests/guardrails/escalation-bridge-onfailureclassified-wired.test.ts :113
// two independent scans (`test()` in the pre-filter vs `exec()` in the - shell (weak) 0xAddict-threadwork-79850e7/tests/guardrails/no-direct-nudge-paths.test.ts :20
* server.ts line 957 shelled out raw Bun.spawn([TMUX_PATH, 'send-keys', ...]) - shell (weak) 0xAddict-threadwork-79850e7/tests/guardrails/no-nudge-agent-signature-drift.test.ts :18
// history via `execSync('git show 85a11c5:<path>')` (git read access is - shell (weak) 0xAddict-threadwork-79850e7/tests/guardrails/pf1-4-wiring.guard.test.ts :68
import { execSync } from 'node:child_process' - shell (weak) 0xAddict-threadwork-79850e7/tests/guardrails/pf2-5-wiring.guard.test.ts :32
import { execSync } from 'node:child_process' - shell (weak) 0xAddict-threadwork-79850e7/tests/guardrails/retention-prune-diff-scope.guard.test.ts :18
import { execSync } from 'node:child_process' - shell (weak) 0xAddict-threadwork-79850e7/tests/guardrails/t3-cross-family-critique-scope-bleed.test.ts :13
import { execSync } from 'node:child_process' - shell (weak) 0xAddict-threadwork-79850e7/tests/guardrails/t3-epic03-decision-scope-bleed.test.ts :18
import { execSync } from 'node:child_process' - shell (weak) 0xAddict-threadwork-79850e7/tests/guardrails/t3-production-diff-allowlist.test.ts :26
import { execSync } from 'node:child_process' - shell (weak) 0xAddict-threadwork-79850e7/tests/guardrails/ternary-reward-scope-bleed.test.ts :28
import { execSync } from 'node:child_process' - shell (weak) 0xAddict-threadwork-79850e7/tests/hooks/hook-sanitization.test.ts :59
const proc = Bun.spawn({ - shell (weak) 0xAddict-threadwork-79850e7/tests/hooks/ko3-rehydrate.test.ts :65
const proc = Bun.spawn({ - shell (weak) 0xAddict-threadwork-79850e7/tests/memory-integrity-cli.test.ts :30
const proc = Bun.spawn({ - shell (weak) 0xAddict-threadwork-79850e7/tests/memory-ordering-concurrency.test.ts :6
// all sharing one tasks.db file). Uses `Bun.spawn()` to launch REAL OS - shell (weak) 0xAddict-threadwork-79850e7/tests/memory.test.ts :1630
const proc = Bun.spawnSync(['git', 'rev-parse', '--short', 'HEAD'], { cwd: BASELINE_DIR }) - shell (weak) 0xAddict-threadwork-79850e7/tests/probes/d3-acceptance.ts :53
const proc = Bun.spawn([TMUX_PATH, 'capture-pane', '-t', sess, '-p', '-S', '-50', '-E', '-1'], { - shell (weak) 0xAddict-threadwork-79850e7/tests/t3-epic05-attribution-reeval.test.ts :19
import { spawn } from 'child_process' - shell (weak) 0xAddict-threadwork-79850e7/tests/tw-team-digest.test.ts :12
import { spawnSync } from "child_process"; - shell 0xAddict-threadwork-79850e7/verification/verify.ts :41
const proc = Bun.spawnSync(['bun', 'test'], { cwd: PROJECT, stdout: 'pipe', stderr: 'pipe' }) - shell 0xAddict-threadwork-79850e7/watchdog.ts :1123
const proc = Bun.spawnSync([TMUX_PATH, 'has-session', '-t', sessionName], {
network 4
- net 0xAddict-threadwork-79850e7/managed-bots.ts :155
const res = await fetch(`${TELEGRAM_API}${manager_token}/getManagedBotToken`, { - net 0xAddict-threadwork-79850e7/mcp-servers/task-board/notify.ts :25
await fetch(`https://api.telegram.org/bot${token}/sendMessage`, { - net 0xAddict-threadwork-79850e7/notify.ts :304
const res = await fetch(`https://api.telegram.org/bot${token}/sendMessage`, { - net 0xAddict-threadwork-79850e7/snoopy-bot.ts :33
await fetch(`https://api.telegram.org/bot${token}/sendMessage`, {
secrets 4
- secrets 0xAddict-threadwork-79850e7/config.ts :30
process.env.TELEGRAM_BOT_TOKEN - secrets 0xAddict-threadwork-79850e7/mcp-servers/task-board/config.ts :18
process.env.TELEGRAM_BOT_TOKEN - secrets 0xAddict-threadwork-79850e7/notify.ts :21
// process.env.TELEGRAM_BOT_TOKEN) naturally resolves the ACTING agent's bot. - secrets (weak) 0xAddict-threadwork-79850e7/tests/notify.test.ts :107
const origAgentToken = process.env.TELEGRAM_BOT_TOKEN
tool registrations 39
- create_task 0xAddict-threadwork-79850e7/mcp-servers/task-board/server.ts :45
- claim_task 0xAddict-threadwork-79850e7/mcp-servers/task-board/server.ts :58
- complete_task 0xAddict-threadwork-79850e7/mcp-servers/task-board/server.ts :69
- list_tasks 0xAddict-threadwork-79850e7/mcp-servers/task-board/server.ts :81
- send_note 0xAddict-threadwork-79850e7/mcp-servers/task-board/server.ts :95
- nudge_agent 0xAddict-threadwork-79850e7/mcp-servers/task-board/server.ts :107
- save_memory 0xAddict-threadwork-79850e7/mcp-servers/task-board/server.ts :119
- recall_memories 0xAddict-threadwork-79850e7/mcp-servers/task-board/server.ts :133
- get_boot_briefing 0xAddict-threadwork-79850e7/mcp-servers/task-board/server.ts :145
- promote_memory 0xAddict-threadwork-79850e7/mcp-servers/task-board/server.ts :150
- pin_memory 0xAddict-threadwork-79850e7/mcp-servers/task-board/server.ts :161
- query_audit_log 0xAddict-threadwork-79850e7/mcp-servers/task-board/server.ts :172
- create_task 0xAddict-threadwork-79850e7/server.ts :142
- delegate_task 0xAddict-threadwork-79850e7/server.ts :155
- claim_task 0xAddict-threadwork-79850e7/server.ts :172
- complete_task 0xAddict-threadwork-79850e7/server.ts :184
- list_tasks 0xAddict-threadwork-79850e7/server.ts :197
- send_note 0xAddict-threadwork-79850e7/server.ts :211
- nudge_agent 0xAddict-threadwork-79850e7/server.ts :223
- send_directed_message 0xAddict-threadwork-79850e7/server.ts :242
- poll_directed_messages 0xAddict-threadwork-79850e7/server.ts :259
- ack_directed_message 0xAddict-threadwork-79850e7/server.ts :270
- save_memory 0xAddict-threadwork-79850e7/server.ts :281
- write_handoff 0xAddict-threadwork-79850e7/server.ts :317
- recall_memories 0xAddict-threadwork-79850e7/server.ts :328
- get_boot_briefing 0xAddict-threadwork-79850e7/server.ts :340
- promote_memory 0xAddict-threadwork-79850e7/server.ts :350
- pin_memory 0xAddict-threadwork-79850e7/server.ts :361
- interrupt_agent 0xAddict-threadwork-79850e7/server.ts :372
- write_status 0xAddict-threadwork-79850e7/server.ts :384
- read_status 0xAddict-threadwork-79850e7/server.ts :403
- clear_status 0xAddict-threadwork-79850e7/server.ts :416
- query_audit_log 0xAddict-threadwork-79850e7/server.ts :428
- challenge_memory 0xAddict-threadwork-79850e7/server.ts :441
- supersede_memory 0xAddict-threadwork-79850e7/server.ts :453
- consolidate_memories 0xAddict-threadwork-79850e7/server.ts :466
- get_memory_health_report 0xAddict-threadwork-79850e7/server.ts :478
- spawn_subagent 0xAddict-threadwork-79850e7/server.ts :488
- close_subagent 0xAddict-threadwork-79850e7/server.ts :503
declared dependencies 5
- @modelcontextprotocol/sdk@^1.0.0
- @anthropic-ai/sdk@^0.82.0
- fastembed@^2.1.0
- bats@^1.13.0
- typescript@^6.0.2
obfuscation 1
- dynamic require()/import() 0xAddict-threadwork-79850e7/tests/memory.test.ts :1643
const { TaskDB: BaselineTaskDB } = await import(`${BASELINE_DIR}/db.ts`)