Skip to main content

debug-loop

Systematic debugging playbook for the Forge agentic loop (src/core/loop.ts and src/agents/executor.ts). Use when a task is stuck, looping, or emitting wrong tool calls.

설치로 이동

소스 정보

저장소
hoangsonww/Forge-Agentic-Coding-CLI
최근 소스 활동
2026년 4월 20일 21:15
감지된 SKILL.md 언어
영어
스타
23
포크
9

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
debug-loop
description
Systematic debugging playbook for the Forge agentic loop (src/core/loop.ts and src/agents/executor.ts). Use when a task is stuck, looping, or emitting wrong tool calls.
The loop is the most expensive place to be wrong. Instrument before you change anything. ## 1. Reproduce deterministically ```bash FORGE_LOG_LEVEL=debug ./bin/forge.js <command> ``` Capture the session id. Events land in `~/.config/forge/events/<session>.ndjson`. If the bug only reproduces against a real provider, pin the model and disable router fallback: ```bash FORGE_MODEL=... FORGE_ROUTER_FALLBACK=0 ./bin/forge.js <command> ``` ## 2. Read the event stream, not the terminal Each turn emits: `turn.start`, `model.call`, `tool.call`, `tool.result`, `validation.result`, `turn.end`. Missing or out-of-order events are your bug. ## 3. Check the usual suspects, in order 1. **Mode caps** (`src/core/mode-policy.ts`) — is the agent hitting turn/token cap? 2. **Validation gate** (`src/core/validation.ts`) — is a valid step being rejected? 3. **Tool registry** — is the requested tool actually registered? `tool.call` with `class: not_found` means no. 4. **Permissions** — silently denied? `tool.result.denied=true`. 5. **State machine** (`src/persistence/tasks.ts`) — illegal transition attempted? ## 4. Add a failing test before the fix Template: `test/unit/executor-loop.test.ts`. Mock `callModel`. If the test you add doesn't turn green after your fix, you fixed the wrong thing. ## 5. Finish with `verify`.
GitHub에서 보기