一键导入
debug
Debug FFT_nano agent runtime issues (Docker default, host opt-in). Use when agent execution fails, runtime checks fail, or onboarding/startup is blocked.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Debug FFT_nano agent runtime issues (Docker default, host opt-in). Use when agent execution fails, runtime checks fail, or onboarding/startup is blocked.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Operate FFT_nano Telegram workflows including main chat claiming, command safety boundaries, admin panel usage, media intake behavior, and Telegram-first deployment patterns.
Host IPC ABI for outbound messages, scheduler control, memory/skill actions, subagents, and file delivery. Use when writing JSON into the group IPC directories or when unsure of payload shapes.
Design agent loops instead of prompting turn-by-turn: pick the right loop type (turn-based, goal-based, time-based, proactive), define stop conditions and verification, and control token burn. Use when the user wants recurring/autonomous agent work, asks 'make this run until done', 'check X every N minutes', 'keep iterating until tests pass', or asks which loop primitive to reach for. Based on Anthropic's 'Getting started with loops'.
Build and apply Home Assistant Lovelace dashboards from templates using a staged workflow with screenshot verification and context-reactive themes.
Run initial FFT_nano setup. Use when user wants to install dependencies, authenticate WhatsApp, register their main channel, or start the background services. Triggers on "setup", "install", "configure fft_nano", or first-time setup requests.
Lightweight research playbook optimized for the FF-Terminal agent. Keeps citation tracking, evidence grading, and summary drafting predictable even when multiple investigations run in parallel.
| name | debug |
| description | Debug FFT_nano agent runtime issues (Docker default, host opt-in). Use when agent execution fails, runtime checks fail, or onboarding/startup is blocked. |
This guide covers host-side diagnosis for current runtime modes:
Host process (src/index.ts -> src/wiring.ts)
-> runtime selection (src/container-runtime.ts)
-> agent execution (src/container-runner.ts)
- Docker mode: docker run fft_nano-agent:latest
- Host mode: node container/agent-runner/dist/index.js
| Log | Location | Purpose |
|---|---|---|
| App log | logs/fft_nano.log | Router, scheduler, runtime orchestration |
| App error log | logs/fft_nano.error.log | Host process failures |
| Runtime run log | groups/<folder>/logs/runtime-*.log | Per-run stdout/stderr, mounts, env diagnostics |
npm run typecheck
npm run build
node -e "import('./dist/container-runtime.js').then(m=>console.log(m.getContainerRuntime()))"
docker --version
docker info >/dev/null && echo "Docker OK" || echo "Docker NOT running"
grep -E '^(CONTAINER_RUNTIME|FFT_NANO_ALLOW_HOST_RUNTIME|FFT_NANO_ALLOW_HOST_RUNTIME_IN_PROD)=' .env || true
Host mode requires:
CONTAINER_RUNTIME=hostFFT_NANO_ALLOW_HOST_RUNTIME=1Production host mode additionally requires:
FFT_NANO_ALLOW_HOST_RUNTIME_IN_PROD=1Cause: .env contains an unsupported value.
Fix:
sed -i.bak 's/^CONTAINER_RUNTIME=.*/CONTAINER_RUNTIME=auto/' .env
Cause: Docker unavailable and host mode not explicitly allowed.
Fix options:
.env:CONTAINER_RUNTIME=host
FFT_NANO_ALLOW_HOST_RUNTIME=1
Check newest runtime log:
ls -t groups/*/logs/runtime-*.log | head -1 | xargs -I{} sh -lc 'echo "== {} =="; tail -120 "{}"'
Then validate credentials:
grep -E '^(CLAUDE_CODE_OAUTH_TOKEN|ANTHROPIC_API_KEY|PI_API|PI_MODEL|ZAI_API_KEY)=' .env
Verify per-group session mount path exists:
ls -la data/pi/main/.pi 2>/dev/null || true
Ensure runtime logs show expected mounted session directory and no permission errors.
echo '{}' | docker run -i --entrypoint /bin/echo fft_nano-agent:latest "Container OK"
npm --prefix container/agent-runner run build
CONTAINER_RUNTIME=host FFT_NANO_ALLOW_HOST_RUNTIME=1 FFT_NANO_DRY_RUN=1 npm run dev
launchctl list | grep fft_nano || true
launchctl kickstart -k gui/$(id -u)/com.fft_nano
sleep 2
tail -80 logs/fft_nano.log
echo "1) Node/build"
node --version
npm run -s build >/dev/null && echo "build OK" || echo "build FAIL"
echo "\n2) Docker"
docker info >/dev/null 2>&1 && echo "docker OK" || echo "docker NOT ready"
echo "\n3) Runtime policy"
grep -E '^(CONTAINER_RUNTIME|FFT_NANO_ALLOW_HOST_RUNTIME|FFT_NANO_ALLOW_HOST_RUNTIME_IN_PROD)=' .env || echo "no runtime env overrides"
echo "\n4) Latest runtime logs"
ls -t groups/*/logs/runtime-*.log 2>/dev/null | head -3 || echo "no runtime logs yet"
If issue persists, capture and share:
logs/fft_nano.log tail (last 120 lines)groups/<folder>/logs/runtime-*.logdocker info (or host mode env flags).env runtime keys (redact secrets)