Workbench 1.9.16 · Start with one task
Choose a project folder and connect the AI you already use. Describe the result, what to keep and how to check it. The first-task guide helps you get ready before you submit.
Use Current for the latest status and Recorded for earlier results. If a task needs a decision, you will find it in Attention.
Screen guide · First task · Current downloads · Legacy releases
Workbench 1.9.16 · 작업 하나로 시작하기
작업 폴더와 평소 쓰던 AI를 선택하세요. 원하는 결과, 그대로 둘 것, 확인 방법을 적고 첫 작업 안내에 따라 제출을 준비합니다.
지금 상태는 Current, 이전 결과는 Recorded에서 봅니다. 판단이 필요한 작업은 Attention에 모여 있습니다.
Find useful development references.
Open Engineering knowledge to browse the 367-entry starter catalogue. Each entry shows whether a full description is available. You can also look up references through Repository MCP or the SDK.
Add your own collection when you need it. The index stays on your computer, and selected references stay with the task when you resume. Use them to guide the work, then check the resulting files.
Engineering guide · Local model connections (preview) · Current release
필요한 개발 자료를 찾아보세요.
Engineering knowledge에서 367개 기본 참조 목록을 살펴보세요. 항목마다 본문이 있는지 확인할 수 있습니다. Repository MCP나 SDK로도 자료를 찾을 수 있습니다.
필요하면 보유한 자료도 추가하세요. 색인은 내 컴퓨터에 남고, 선택한 참조는 작업을 재개할 때도 함께 이어집니다. 자료를 참고해 작업한 뒤에는 결과 파일을 검사하세요.
Find an earlier decision.
Open Repository context, connect a CALF history folder and choose a module. Search earlier decisions or open the original record you need.
Use Capture local Git to save versions from HEAD, the index and your working files. Choose a file and version to read. Capturing files does not run checks or send them to your AI.
Repository Intelligence is included with CALF. Repository guide · Claude connection.
전에 정한 내용을 다시 찾아보세요.
Repository context를 열고 CALF 기록 폴더를 연결한 뒤 모듈을 고르세요. 이전에 정한 내용을 검색하거나 필요한 원본 기록을 열어볼 수 있습니다.
Capture local Git으로 HEAD·인덱스·작업 파일의 버전을 저장합니다. 파일과 버전을 골라 읽어보세요. 파일을 저장하는 것만으로 검사가 실행되거나 AI에게 전송되지는 않습니다.
Repository Intelligence는 CALF에 기본으로 포함돼 있습니다. Repository 사용법 · Claude 연결.
Choose the interface you need.
Harness · 1.8.19
Use Harness from your terminal to connect CALF to Codex or Antigravity, or to run a task without opening a window.
Workbench · 1.9.16
Use Workbench to follow a task, inspect file changes and check results, and make small corrections from a desktop app.
New tasks created through calf task and Workbench use the same job format. Point both to the same CALF_WORK_HOME to see the same jobs. Do not run both workers on separate copies of a live records folder.
history.html and installation state. They are preserved; they are not automatically imported into Workbench's task list.필요한 작업 방식에 맞춰 선택하세요.
Harness · 1.8.19
터미널에서 사용하려면 Harness를 선택하세요. Codex·Antigravity에 연결하거나 창 없이 작업을 실행할 수 있습니다.
Workbench · 1.9.16
화면으로 사용하려면 Workbench를 선택하세요. 작업 흐름과 변경 파일, 검사 결과를 살펴보고 작은 수정도 할 수 있습니다.
calf task와 Workbench에서 만든 새 작업은 같은 기록 형식을 사용합니다. 양쪽의 CALF_WORK_HOME을 동일하게 지정하면 같은 작업을 볼 수 있습니다. 실행 중인 기록 폴더를 복사해 두 곳에서 동시에 처리하지 마세요.
history.html과 설치 상태는 그대로 보존됩니다. 이 기록이 Workbench 작업 목록으로 자동 변환되는 것은 아닙니다.Extract, keep the folder, then launch.
| Platform | Package | Requirements |
|---|---|---|
| macOS Apple Silicon | macos-arm64.zip | macOS 14+; native ARM64. Open CALF Workbench.app for the desktop edition. |
| Windows x64 | windows-x86_64.zip | Windows 10/11 x64; Workbench needs Microsoft WebView2 Runtime. Open calf-terminal.exe. |
| Linux x64 | linux-x86_64.tar.gz | glibc desktop. Workbench requires GTK 3, WebKitGTK 4.1 and a graphical session; Debian 13 is the native UI test environment. Run ./calf-terminal. |
Use the package matching the CPU, not only the OS. Intel Mac, Windows ARM64, Linux ARM64 and Alpine/musl are not included. Rust, Node.js and an external SQLite installation are not needed. The checks for your project still need their own runtimes; supported Python checks need Python 3 and, for pytest, an already installed pytest; Cargo checks need an installed Rust toolchain and cached dependencies.
- Download the archive and
SHA256SUMSfrom the matching GitHub or GitLab release. - Verify the archive hash, then extract the entire folder. On Linux use
tar -xzf FILE.tar.gzto preserve executable permissions. - Keep the core
calf/calf.exebeside the desktop executable. On macOS both are inside the app bundle. - Launch Workbench, or run
./calf --help(.\calf.exe --helpin PowerShell).
# macOS
shasum -a 256 CALF-Workbench-1.9.16-macos-arm64.zip
# Linux
sha256sum CALF-Workbench-1.9.16-linux-x86_64.tar.gz
# PowerShell
Get-FileHash .\CALF-Workbench-1.9.16-windows-x86_64.zip -Algorithm SHA256The default records folder is below. An explicit absolute CALF_WORK_HOME overrides it. Existing development installations may also have a runtime.json; an explicit runtime takes precedence and fails closed if its home is invalid.
macOS: ~/Library/Application Support/CALF/workbench
Windows: %LOCALAPPDATA%\CALF\workbench
Linux: $XDG_DATA_HOME/calf/workbench
or ~/.local/share/calf/workbench전체 압축을 풀고, 폴더를 유지한 채 실행하세요.
| 플랫폼 | 패키지 | 필요 환경 |
|---|---|---|
| macOS Apple Silicon | macos-arm64.zip | macOS 14 이상, ARM64. 데스크톱은 CALF Workbench.app을 엽니다. |
| Windows x64 | windows-x86_64.zip | Windows 10/11 x64. Workbench는 Microsoft WebView2 Runtime이 필요하며 calf-terminal.exe를 실행합니다. |
| Linux x64 | linux-x86_64.tar.gz | glibc 환경. Workbench는 GTK 3·WebKitGTK 4.1·그래픽 세션이 필요합니다. Debian 13이 네이티브 UI 시험 환경입니다. ./calf-terminal을 실행합니다. |
운영체제뿐 아니라 CPU도 맞춰 선택하세요. Intel Mac, Windows ARM64, Linux ARM64, Alpine/musl 패키지는 포함되지 않습니다. Rust·Node.js·별도 SQLite 설치는 필요하지 않습니다. 프로젝트 검사에 필요한 실행 환경은 별도이며, Python 검사는 Python 3, pytest는 추가로 설치된 pytest가 필요합니다. Cargo 검사는 Rust 도구 체인과 의존성 캐시가 필요합니다.
- 해당 GitHub 또는 GitLab 릴리즈에서 압축 파일과
SHA256SUMS를 받습니다. - 해시를 비교한 뒤 전체 압축을 풉니다. Linux에서는 실행 권한을 보존하도록
tar -xzf FILE.tar.gz를 사용합니다. calf또는calf.exe를 데스크톱 실행 파일 옆에 유지합니다. macOS에서는 두 파일이 앱 번들 안에 있습니다.- Workbench를 열거나
./calf --help를 실행합니다. PowerShell에서는.\calf.exe --help입니다.
# macOS
shasum -a 256 CALF-Workbench-1.9.16-macos-arm64.zip
# Linux
sha256sum CALF-Workbench-1.9.16-linux-x86_64.tar.gz
# PowerShell
Get-FileHash .\CALF-Workbench-1.9.16-windows-x86_64.zip -Algorithm SHA256기본 기록 위치는 아래와 같습니다. 절대 경로인 CALF_WORK_HOME을 지정하면 우선 사용합니다. 기존 개발판의 명시적 runtime.json이 있으면 그 설정이 우선하며, 잘못된 경로일 때 임의로 다른 위치로 대체하지 않습니다.
macOS: ~/Library/Application Support/CALF/workbench
Windows: %LOCALAPPDATA%\CALF\workbench
Linux: $XDG_DATA_HOME/calf/workbench
또는 ~/.local/share/calf/workbenchStart with one task.
Choose a project folder and the AI you already use. Describe the result you want and what to keep unchanged.
- Choose Choose workspace and select the project CALF may work in.
- Choose Connect AI. A saved connection reports local selection, not live authentication or permission.
- In an empty request, choose Use a request outline. Fill in Result I want, Keep unchanged and How to check. Review the completed request, then choose Submit.
Once a task appears, the guide folds away. Open Start a task to see it again, or Check setup to check your connection and tools.
CALF uses your project’s existing checks: unittest, configured pytest, supported Cargo integration tests or node:test. Set these up before starting. The request outline helps you describe the task; you still need to choose how to check the result.
Keep using your existing AI account and approval settings. You can also connect through the OpenAI API; its key is stored in your OS credential store and API usage is billed by the provider.
Check profiles / Python environment
./calf check-discover /absolute/path/project inspects check selection without starting a task. Python selection is .venv → venv → active environment → bounded PATH probe. An invalid explicit environment stops discovery. Dependencies are not installed automatically; pre-existing failures are recorded rather than waived.
작업 하나로 시작하세요.
작업할 폴더와 평소 쓰던 AI를 선택하세요. 원하는 결과와 그대로 두고 싶은 내용을 적으면 됩니다.
- Choose workspace로 CALF가 작업할 프로젝트를 고릅니다.
- Connect AI로 연결합니다. 연결 저장은 로컬 선택 상태이며 실시간 인증이나 실행 승인이 아닙니다.
- 빈 요청창에서 Use a request outline을 누릅니다. Result I want(결과), Keep unchanged(유지할 것), How to check(확인 방법)를 채우고 검토한 뒤 Submit을 누릅니다.
작업이 목록에 생기면 안내는 접힙니다. Start a task로 다시 열거나, Check setup에서 연결과 도구를 확인할 수 있습니다.
CALF는 프로젝트에 준비된 unittest·설정된 pytest·지원되는 Cargo 통합 테스트·node:test를 사용합니다. 작업 전에 검사 도구를 준비하세요. 요청 초안은 할 일을 정리하는 데 도움이 되며, 결과를 어떻게 확인할지는 직접 정해야 합니다.
기존 AI 계정과 승인 설정을 그대로 사용하세요. OpenAI API로 직접 연결할 수도 있습니다. API 키는 운영체제의 자격증명 저장소에 보관하며, 사용 요금은 공급자 기준에 따릅니다.
검사 프로필 / Python 환경
./calf check-discover /absolute/path/project로 작업 실행 없이 검사 선택을 확인합니다. Python은 .venv → venv → 활성 환경 → 제한된 PATH 탐색 순서입니다. 명시한 환경이 손상되면 중단합니다. 의존성은 자동 설치하지 않으며 기존 실패를 면제하지 않습니다.
The CPU and memory readings in the screenshots are for the whole computer.스크린샷의 CPU·메모리 수치는 컴퓨터 전체 사용량입니다.
Use CALF from your terminal.
./calf task home
./calf task connect codex
./calf task run "/absolute/path/project" "Fix the total calculation; preserve the tests."
./calf task list
./calf task status TASK_IDPowerShell uses .\calf.exe. Supply an executable path after connect codex if discovery fails. Shell quotes protect paths and requests containing spaces or CJK text.
| Command | Behavior |
|---|---|
task submit WORKSPACE REQUEST | Queue a new job and print its ID. Does not start a background service. |
task run WORKSPACE REQUEST | Queue, process eligible jobs in the same home, then return this job's current result. Exit 0 requires SATISFIED; 2 means incomplete; 1 is a command error. |
task work | Process the queue in the foreground. Opening Workbench also starts eligible queued work. Its exit 0 means worker idle, not that every task passed. |
task pause / resume / cancel ID | Request control. Resume queues the remaining work; run task work afterward. Cancellation is final. |
task recheck ID | Queue checks after a supported external edit, within the existing budget and scope. |
task preferences "TEXT" | Save a working preference for future jobs. |
For custom non-Python checks and provider adapters, the advanced calf run WORKSPACE REQUEST PROVIDER.json STATE [RESUME_TASK] interface accepts a bounded provider/check specification. The JSON calf api interface exposes the same task operations as Workbench; it requires an explicit home. These interfaces do not add permissions to the connected host.
Share a custom records folder with Workbench
# macOS / Linux: use an existing physical folder
export CALF_WORK_HOME="/absolute/path/calf-records"
./calf task home
# Launch the Workbench executable from this same environment.
# macOS: "CALF Workbench.app/Contents/MacOS/calf-terminal"
# PowerShell
$env:CALF_WORK_HOME = 'D:\CALF\workbench'
.\calf.exe task home
.\calf-terminal.exeGUI launchers may not inherit terminal environment variables. Keep an existing explicit runtime configuration when using custom storage. Do not move a running records folder.
창 없이 작업을 실행하고 진행 상황을 확인하세요.
./calf task home
./calf task connect codex
./calf task run "/absolute/path/project" "합계 계산을 수정하고 기존 검사는 보존해 주세요."
./calf task list
./calf task status TASK_IDPowerShell에서는 .\calf.exe를 사용합니다. 자동 감지가 실패하면 connect codex 뒤에 실행 파일 경로를 지정합니다. 공백이나 CJK 문자가 있는 경로·요청은 셸의 따옴표로 감싸세요.
| 명령 | 동작 |
|---|---|
task submit WORKSPACE REQUEST | 새 작업을 대기열에 넣고 ID를 출력합니다. 백그라운드 서비스를 시작하지 않습니다. |
task run WORKSPACE REQUEST | 작업을 등록하고 같은 기록 위치의 실행 가능한 작업을 처리한 뒤 해당 작업의 현재 결과를 반환합니다. 종료 코드 0은 SATISFIED, 2는 미완료, 1은 명령 오류입니다. |
task work | 포그라운드에서 대기열을 처리합니다. Workbench를 열어도 실행 가능한 작업이 처리됩니다. 이 명령의 종료 코드 0은 워커가 대기 상태라는 뜻이며 모든 작업의 합격을 뜻하지 않습니다. |
task pause / resume / cancel ID | 일시 정지·재개·취소를 요청합니다. Resume 후에는 task work로 처리합니다. 취소는 최종 상태입니다. |
task recheck ID | 지원되는 외부 수정 이후 기존 범위와 시도 예산 안에서 재검사를 예약합니다. |
task preferences "TEXT" | 앞으로 생성할 작업의 개인 선호를 저장합니다. |
Python 외의 명시적 검사와 공급자 어댑터는 고급 인터페이스 calf run WORKSPACE REQUEST PROVIDER.json STATE [RESUME_TASK]에서 제한된 공급자·검사 명세로 지정할 수 있습니다. JSON calf api는 Workbench와 같은 작업 기능을 제공하며 명시적 home이 필요합니다. 이 인터페이스가 호스트 권한을 확장하지는 않습니다.
Workbench와 사용자 지정 기록 폴더 공유
# macOS / Linux: 실제 존재하는 물리 폴더를 사용하세요.
export CALF_WORK_HOME="/absolute/path/calf-records"
./calf task home
# 같은 환경에서 Workbench 실행 파일을 실행하세요.
# macOS: "CALF Workbench.app/Contents/MacOS/calf-terminal"
# PowerShell
$env:CALF_WORK_HOME = 'D:\CALF\workbench'
.\calf.exe task home
.\calf-terminal.exeGUI 실행기는 터미널의 환경 변수를 상속하지 않을 수 있습니다. 별도 저장 위치를 사용하던 기존의 명시적 runtime 설정은 유지하세요. 실행 중인 기록 폴더를 옮기지 마세요.
Connect your existing AI tools.
Hooks connect CALF to the tools you already use. Your host’s approval and sandbox settings still apply.
./calf install --root "/absolute/path/CALF" \
--codex-home "/absolute/path/.codex" \
--antigravity-home "/absolute/path/.gemini"
./calf register "/absolute/path/project" "/absolute/path/contract.json" \
--config "/absolute/path/CALF/config.json"
./calf status "/absolute/path/project" "example-task"The installer keeps versioned binaries and backs up settings before adding its hooks. Restart the host; Codex may require its normal /hooks review and trust step. Run the exact checks[].commandLine returned by registration. It binds the installed executable, project, task, criterion and contract hash. Keep old installed binaries because old registered commands still reference them.
Use the included contract.example.json as a template. Set a new task ID, relative file scope, an executable-and-arguments array, and environment keys that affect the check. A successful process exit alone is not acceptance; inspect outcome. If no registered evidence exists, CALF retains UNKNOWN.
Remove the hooks without removing records
./calf uninstall --root "/absolute/path/CALF"If settings still match CALF's recorded edits, the original backup is restored. Later user changes are retained while owned hook entries are removed. Conflicting ownership or backup changes stop removal. Records, backups and versioned binaries remain. Do not use the historical 1.8.0 --detach-only escape unless you understand that original settings restoration cannot be established.
지금 쓰는 AI 도구와 연결하세요.
훅으로 CALF를 기존 도구에 연결할 수 있습니다. 연결한 호스트의 승인·샌드박스 설정은 그대로 적용됩니다.
./calf install --root "/absolute/path/CALF" \
--codex-home "/absolute/path/.codex" \
--antigravity-home "/absolute/path/.gemini"
./calf register "/absolute/path/project" "/absolute/path/contract.json" \
--config "/absolute/path/CALF/config.json"
./calf status "/absolute/path/project" "example-task"설치기는 버전별 실행 파일을 보존하고 설정을 백업한 뒤 훅을 추가합니다. 호스트를 재시작하세요. Codex의 정상적인 /hooks 검토·신뢰 절차가 필요할 수 있습니다. 등록 결과의 checks[].commandLine을 그대로 실행하세요. 설치된 실행 파일·프로젝트·작업·검사 기준·계약 해시를 연결하는 명령입니다. 예전 등록 명령이 참조하는 이전 버전 실행 파일도 유지해야 합니다.
포함된 contract.example.json을 참고하여 새 작업 ID, 상대 경로 파일 범위, 실행 파일과 인자 배열, 검사에 영향을 주는 환경 키를 설정합니다. 프로세스의 정상 종료만으로 합격하지 않으므로 outcome을 확인하세요. 등록된 근거가 없으면 UNKNOWN을 유지합니다.
기록을 남기고 훅만 제거
./calf uninstall --root "/absolute/path/CALF"설정이 CALF가 기록한 변경과 일치하면 원래 백업을 복원합니다. 이후 사용자가 바꾼 내용은 보존하고 CALF 소유 훅만 제거합니다. 소유권이나 백업 충돌이 있으면 중단합니다. 기록·백업·버전별 실행 파일은 남습니다. 원래 설정 복원을 확인할 수 없다는 의미를 이해하지 못한 상태에서는 이전 1.8.0의 --detach-only 예외를 사용하지 마세요.
Antigravity compatibility update
CALF can read the completion details in Antigravity’s long-output preview. Use the included connection guide to set it up.
For Claude CLI or the desktop app’s local Code mode, follow the English or Korean guide in the included hosts/ kit. The Claude connection is available on macOS.
Antigravity 호환성 업데이트
Antigravity의 긴 출력 미리보기에서도 작업이 어떻게 끝났는지 확인할 수 있습니다. 연결 방법은 패키지에 포함된 안내를 따라가세요.
Claude CLI나 데스크톱 앱의 로컬 Code 모드는 패키지의 hosts/ 키트에 있는 영·한 안내를 따라 연결하세요. Claude 연결은 macOS에서 사용할 수 있습니다.
Follow the task on screen.
| Area | What it shows |
|---|---|
| Task Flow | Recorded EDIT, CHECK, REPAIR and review stages with small timestamps. Select a node to inspect its evidence. |
| Git Graph | Local commits, HEAD / branch labels and working-tree status. Read-only observation; no fetch, push, checkout or execution permission is granted. |
| Worker terminals | Recorded or current operation, process ID, exit information and check evidence. A node can remain in the view after its process has stopped. |
| System monitor | CPU, GPU, memory, swap, disk and network when available. Missing sensors remain unavailable. Whole-system memory is not CALF's own footprint. |
| Journal | Append-only execution events and recovery evidence. Earlier failure records stay visible after a successful retry. |
Read the status text along with its color. Green marks completed work, amber marks waiting or unfinished work, and red marks failure or cancellation. Git Graph uses colors to show repository state.
화면에서 작업 흐름을 따라가세요.
| 영역 | 표시 내용 |
|---|---|
| Task Flow | EDIT·CHECK·REPAIR·검수 단계와 작은 타임스탬프를 표시합니다. 노드를 선택하면 근거를 확인합니다. |
| Git Graph | 로컬 커밋·HEAD·브랜치·작업 트리 상태입니다. 읽기 전용 관측이며 fetch·push·checkout 또는 새로운 실행 권한을 부여하지 않습니다. |
| 워커 터미널 | 현재 또는 기록된 작업, PID, 종료 정보, 검사 근거입니다. 노드가 남아 있다고 프로세스가 살아 있다는 뜻은 아닙니다. |
| 시스템 모니터 | 가능한 CPU·GPU·메모리·스왑·디스크·네트워크 값을 표시합니다. 센서가 없으면 해당 값을 표시할 수 없다고 안내합니다. 전체 시스템 메모리는 CALF 자체의 사용량과 다릅니다. |
| Journal | 실행 이벤트가 순서대로 추가되는 기록입니다. 복구 근거도 함께 남깁니다. 재시도가 성공해도 이전 실패 기록은 유지합니다. |
상태 문구와 색상을 함께 보세요. 녹색은 완료, 황색은 대기·미완료, 적색은 실패·취소를 나타냅니다. Git Graph의 색상은 저장소 상태를 보여줍니다.
Review the changed files.
In Diff, choose Task, Attempt, Recovery or Working Tree. Use Unified or Before & After to compare a file, then open its saved content and check results. Only content saved with the task is available to view.
Look at which version of the file a check tested. If the file changed afterward, run the checks again. When CALF cannot match a result to the current file, it shows that the result needs checking.
바뀐 파일을 살펴보세요.
Diff에서 Task·Attempt·Recovery·Working Tree 중 보고 싶은 범위를 고릅니다. Unified 또는 Before & After로 파일을 비교하고, 저장된 내용과 검사 결과를 확인하세요. 작업에 저장된 내용만 다시 볼 수 있습니다.
검사가 어느 버전의 파일을 확인했는지 보세요. 이후 파일을 고쳤다면 다시 검사해야 합니다. 현재 파일과 검사 결과가 연결되는지 확인할 수 없을 때는 확인이 필요한 상태로 표시합니다.
Light Edit or your own editor.
- Select a changed file in Diff.
- For a small correction, open Light Edit. Review the text, apply the patch, then wait for revalidation.
- For larger changes, select an editor and choose Open in Editor. The detected list is platform-dependent; Add editor lets you select an application or executable manually.
- After an external edit, return to CALF and choose Recheck. Old PASS evidence cannot be reused for a different file version.
Use Light Edit for files up to 16 KiB and changes of up to 40 lines. Wait for the running task to finish first. Protected test/settings files and files outside the chosen scope cannot be edited here. For larger changes, open your editor. You can add up to eight editors.
Light Edit 또는 익숙한 에디터를 사용하세요.
- Diff에서 변경된 파일을 선택합니다.
- 작은 수정은 Light Edit를 열어 내용을 확인하고 패치를 적용한 뒤 재검증을 기다립니다.
- 큰 수정은 에디터 목록에서 선택하고 Open in Editor를 누릅니다. 감지 목록은 플랫폼에 따라 다릅니다. Add editor에서 앱이나 실행 파일을 직접 추가할 수 있습니다.
- 외부 수정 후 CALF로 돌아와 Recheck를 누릅니다. 다른 파일 버전에 예전 PASS 근거를 재사용할 수 없습니다.
Light Edit는 16 KiB 이내의 파일에서 최대 40줄을 고칠 때 사용합니다. 작업이 실행 중일 때는 기다려야 하며, 보호되는 테스트·설정 파일이나 정한 범위 밖의 파일은 바꿀 수 없습니다. 큰 수정은 외부 에디터를 여세요. 에디터는 최대 8개까지 직접 추가할 수 있습니다.
Continue a task that stopped.
| State | Next step |
|---|---|
| WAIT / resources | Leave the worker running or reopen Workbench. Eligible work resumes when resources permit. The fader limits work; it does not drop checks. |
| RETRY / response incomplete | Inspect the failure and connection, then Resume. Earlier attempts and consumed budget remain. |
| PAUSE | Resume when ready. Pause applies between owned operations, not necessarily at the instant of a click. |
| CHECK / evidence stale | Review the current file version and Recheck. Do not force old evidence to PASS. |
| CHECK / needs reconciliation | An operation's effects are uncertain. Inspect files and evidence; ordinary Resume is refused until the supported reconciliation is established. |
| FAIL / budget exhausted | Investigate the retained attempts. Reuse can create a new task with a fresh request and checks; it does not reset or rewrite the failed task. |
| STOP / cancelled | The task is final. Start or Reuse a new task if work is needed. |
Use Reuse to start a new task from an earlier request. The new task runs its own checks. To stop a running task, use Cancel and check its status; closing the window may leave the worker running.
To rebuild a damaged index, back up your records and run calf recover-index WORKSPACE. CALF uses the saved HTML records to rebuild it. If those records are damaged or missing, recovery stops and the problem needs attention.
멈춘 작업을 이어가세요.
| 상태 | 다음 행동 |
|---|---|
| WAIT / resources | 워커를 유지하거나 Workbench를 다시 엽니다. 자원이 허용하면 실행 가능한 작업이 재개됩니다. 페이더는 실행량을 제한하며 검사를 생략하지 않습니다. |
| RETRY / response incomplete | 실패와 연결 상태를 확인한 뒤 Resume합니다. 이전 시도와 사용한 예산은 유지합니다. |
| PAUSE | 준비되면 Resume합니다. 정지는 CALF 소유 작업 사이에 적용되므로 클릭 즉시 멈추지 않을 수 있습니다. |
| CHECK / evidence stale | 현재 파일 버전을 검토하고 Recheck합니다. 오래된 근거를 강제로 PASS로 만들지 마세요. |
| CHECK / needs reconciliation | 작업이 어디까지 반영됐는지 확인이 필요합니다. 파일과 실행 기록을 살펴보세요. 상태를 확인하기 전에는 Resume할 수 없습니다. |
| FAIL / budget exhausted | 보존된 시도를 조사하세요. Reuse로 새 요청과 검사를 갖는 새 작업을 만들 수 있지만 기존 실패 작업을 초기화하거나 다시 쓰지 않습니다. |
| STOP / cancelled | 최종 취소입니다. 필요하면 새 작업을 시작하거나 Reuse합니다. |
이전 요청을 바탕으로 새 작업을 시작하려면 Reuse를 사용하세요. 새 작업은 따로 검사합니다. 실행 중인 작업을 멈추려면 Cancel을 누르고 상태를 확인하세요. 창을 닫아도 작업은 계속될 수 있습니다.
인덱스를 복구하려면 기록을 먼저 백업한 뒤 calf recover-index WORKSPACE를 실행하세요. 저장된 HTML 기록으로 인덱스를 다시 만듭니다. 이 기록까지 손상되거나 사라졌다면 복구가 멈추므로 원인을 확인해야 합니다.
Choose what to share with your AI.
- Open Local sources and choose Add folder.
- Browse or filter names, then preview a text file.
- Use Attach to next task only when you want that reference included in the next AI request.
- Disconnect a source to remove its CALF connection. Earlier task evidence remains.
Attach up to four references, within 8 KiB including source details. Hidden files, symbolic links and credential-related files are excluded. If an attachment changes, select it again. These controls apply to CALF’s reader; your AI host keeps its own file access.
To use the same folder reader from an MCP client, run calf local-mcp "/absolute/path/folder". Choose only the folder you need. The connection uses stdio and does not open a network server.
AI에게 보낼 자료를 직접 고르세요.
- Local sources에서 Add folder를 선택합니다.
- 파일을 탐색하거나 이름으로 필터링하고 텍스트를 미리 봅니다.
- 다음 AI 요청에 보낼 때만 Attach to next task를 사용합니다.
- Disconnect로 CALF 연결을 해제할 수 있습니다. 이전 작업의 근거는 남습니다.
출처 정보를 포함해 8 KiB 이내, 최대 4개 참조를 첨부할 수 있습니다. 숨김 파일·심볼릭 링크·자격증명 관련 파일은 제외합니다. 첨부한 파일을 고쳤다면 다시 선택하세요. 이 제한은 CALF의 자료 읽기에 적용되며, AI 호스트의 파일 접근 권한은 별도입니다.
MCP 클라이언트에서 같은 폴더 읽기 기능을 쓰려면 calf local-mcp "/absolute/path/folder"를 실행하세요. 필요한 폴더만 선택하면 됩니다. 표준 입출력으로 연결하며 네트워크 서버를 열지 않습니다.
Tell CALF how you like to work.
Use My preferences to save your preferred language, response style and working conventions for new tasks. Existing tasks and their rules stay as they were. The app menus are in English; you can write requests, filenames and preferences in Korean, Chinese, Japanese and other languages supported by your fonts.
CALF loads file previews when you open them. You do not need a local language model or a separate indexing server. Leave enough disk space for the work records you keep.
선호하는 작업 방식을 알려주세요.
My preferences에 선호하는 언어와 답변 방식, 작업 관례를 적어두세요. 새 작업에 적용되며 이전 작업과 규칙은 유지됩니다. 앱 메뉴는 영어지만 요청·파일명·선호 내용에는 한국어·중국어·일본어 등을 사용할 수 있습니다. 매뉴얼의 언어 전환은 앱 설정과 별개입니다.
파일 미리보기는 열 때 불러옵니다. 로컬 언어 모델이나 별도 인덱싱 서버는 필요하지 않습니다. 작업 기록을 보관할 디스크 공간은 여유 있게 남겨두세요.
Preserve the data; replace only the program.
- Let owned operations finish, or request Pause and wait for the owned process to stop. Close the old Workbench window before replacing program files.
- Back up the existing installation configuration,
history.html, contracts, settings and complete Workbench records home. Keep related journal segments and indexes together; the HTML is authoritative. - Extract the new package into a new folder. Keep the old package until the new one is verified.
- For an existing 1.8.4 hook installation, run the 1.8.19 installer with the same installation root and host homes. The installer preserves versioned binaries, bindings and original setting backups. Review hooks through the host's normal mechanism if prompted.
- For Workbench, keep the same records home. If the old development build used an explicit
runtime.json, retain that private configuration beside the new desktop/core binaries, or launch both interfaces with the sameCALF_WORK_HOME. Do not put your runtime configuration in a public package. - Inspect previous records and a newly executed check. Files changing after verification must become stale, not stay PASS.
Resuming after an update: keep the full records folder, including runtimes. Tasks use the program version they started with. If that version cannot be found or verified, CALF leaves the task waiting for attention. Advanced calf run tasks also need their original compatible runtime.
Rollback: close the new app and retain its data; launch the previous binary against a backup of the appropriate record format after checking compatibility. Do not restore old host settings over later user edits. Never delete versioned binaries still referenced by registered check commands.
데이터는 보존하고 프로그램만 교체하세요.
- CALF가 실행 중인 작업이 끝나기를 기다리거나 Pause 후 실행 중인 프로세스가 멈춘 것을 확인한 뒤 이전 Workbench 창을 닫습니다.
- 설치 설정·
history.html·계약·설정 파일·Workbench 전체 기록 폴더를 백업합니다. 관련 저널 세그먼트와 인덱스를 함께 유지하며 HTML이 기준 기록입니다. - 새 패키지를 새 폴더에 풉니다. 새 버전을 확인할 때까지 이전 패키지도 보관합니다.
- 1.8.4 훅 설치는 같은 설치 루트와 호스트 폴더로 1.8.19 설치기를 실행합니다. 버전별 실행 파일·등록 정보·최초 설정 백업을 보존합니다. 호스트가 요청하면 정상적인 훅 검토 절차를 진행합니다.
- Workbench는 같은 기록 위치를 사용합니다. 개발판의
runtime.json이 있다면 새 데스크톱·코어 실행 파일 옆에 개인 설정을 유지하거나 양쪽에서 동일한CALF_WORK_HOME을 사용합니다. 개인 runtime 설정을 공개 패키지에 넣지 마세요. - 이전 기록과 새로 실행한 검사를 확인합니다. 검증 후 변경된 파일은 계속 PASS가 아니라 오래된 근거로 처리되어야 합니다.
이전 버전으로 복귀: 새 앱을 닫고 데이터를 보존합니다. 호환성을 확인한 후 적합한 기록 형식의 백업을 이전 실행 파일로 엽니다. 이후 사용자 변경 위에 오래된 호스트 설정을 덮어쓰지 마세요. 등록된 검사 명령이 참조하는 버전별 실행 파일도 삭제하지 마세요.
업데이트 뒤 작업을 재개하려면: runtimes를 포함한 기록 폴더 전체를 유지하세요. 작업을 시작할 때 사용한 프로그램 버전으로 이어갑니다. 그 버전을 찾거나 확인할 수 없다면 작업은 확인이 필요한 상태로 남습니다. 고급 calf run 작업도 원래 호환 런타임이 필요합니다.
Connect a tool with Runtime Work.
Use SDK 0.2.11 to connect a Python, Node or loopback HTTP adapter and describe the work in a calf.work.v1 contract. Follow SDK_WORK_PROTOCOL.md and the examples in the SDK archive. CALF pins the files and executables you select; the adapter still runs with its OS permissions.
- Keep the same
CALF_WORK_HOMEfor Harness, SDK, Local MCP and Workbench. - Open Runtime Work → Import contract…. Import prepares a saved copy of the contract and inputs. Choose Run / Resume when you are ready to execute.
- Select the work and use Run / Resume. CALF records the real process, attempt, output manifest and required checks. If an HTTP response is lost, CALF queries the existing request ID before deciding what to do next.
- Inspect artifacts, timestamps, checks and Evidence. Recheck validates the current candidate. If the file digest has changed, the result is UNKNOWN.
- Use Adopt checked version only for a matching validated candidate, or use a contract that explicitly authorizes automatic adoption. A new attempt consumes the original budget and preserves earlier candidates.
After Cancel, wait for the process and cleanup to finish. Until CALF can confirm this, the task stays UNKNOWN and keeps its execution slot. Opening the panel only shows the task; choose Run / Resume to continue it.
Runtime Work로 도구를 연결하세요.
SDK 0.2.11로 Python·Node·루프백 HTTP Adapter를 연결하고 calf.work.v1 계약에 할 일을 적습니다. SDK의 WORK_PROTOCOL_KR.md와 예제를 따라가세요. 선택한 파일과 실행 파일을 고정하며, Adapter에는 운영체제의 실행 권한이 적용됩니다.
- Harness·SDK·Local MCP·Workbench에 같은
CALF_WORK_HOME을 사용합니다. - Runtime Work → Import contract…로 계약과 입력을 가져와 준비합니다. 실행하려면 Run / Resume을 선택하세요.
- 작업을 선택하고 Run / Resume을 누릅니다. 실행 과정과 만들어진 파일, 검사 결과가 기록됩니다. HTTP 응답을 받지 못했을 때는 같은 요청의 상태를 먼저 확인합니다.
- 산출물·타임스탬프·검사·Evidence를 확인합니다. Recheck로 현재 파일을 다시 검사합니다. 검사한 뒤 파일이 바뀌었다면 UNKNOWN으로 표시합니다.
- 검사한 파일이 맞는지 확인한 뒤 Adopt checked version을 누르거나 계약에서 자동 채택을 명시합니다. 새 시도는 원래 예산을 사용하고 이전 산출물을 보존합니다.
Cancel 뒤에는 프로세스 종료와 정리가 끝날 때까지 기다리세요. 이를 확인하지 못하면 UNKNOWN 상태와 실행 슬롯을 유지합니다. 패널을 열면 기록만 보이며, 이어가려면 Run / Resume을 선택합니다.
Check your setup and update CALF.
Open Check setup to check your AI connection, project folder and check tools. Install any missing project tools yourself. In Updates, choose a release archive to prepare a separate copy of CALF. Keep your records folder and older runtimes so existing tasks can continue.
JavaScript/TypeScript checks use a bounded node:test profile. A suitable Node runtime is required; TypeScript support depends on the selected runtime. npm scripts and dependency installation are not executed. Python unittest/pytest and bounded single-package Cargo integration checks remain supported.
Use the source-reader MCP to browse files and work MCP to manage tasks. Work MCP is read-only by default; enable task controls when you need them. It handles file outputs. External transactions and the artistic quality of media need their own review.
연결을 확인하고 업데이트하세요.
Check setup에서 AI 연결, 작업 폴더와 검사 도구를 확인하세요. 빠진 프로젝트 도구는 직접 설치합니다. Updates에서 배포 파일을 고르면 새 CALF 사본을 준비할 수 있습니다. 이전 작업을 이어갈 수 있도록 기록 폴더와 기존 runtimes를 유지하세요.
JavaScript/TypeScript는 제한된 node:test 프로필을 사용합니다. 적절한 Node 버전이 필요하며 TypeScript 지원은 선택한 런타임에 따릅니다. npm 스크립트·의존성 설치는 실행하지 않습니다. Python unittest·pytest·단일 패키지 Cargo 통합 검사도 지원합니다.
파일을 읽을 때는 자료 조회 MCP, 작업을 관리할 때는 작업 MCP를 사용하세요. 작업 MCP는 기본적으로 조회만 가능하며, 필요할 때 제어 기능을 켭니다. 파일로 남는 결과물을 다루며 외부 거래나 영상의 미적 품질은 별도로 확인해야 합니다.
See how things stand now.
Choose a workspace and open Task status to see saved results beside the current status. Refresh status refreshes the display without running checks or calling your AI.
If a file or its check environment changed, an earlier PASS may show as UNKNOWN now. Open the details to see what changed, such as a different LC_ALL language setting, then decide whether to run the checks again.
Expand a task card to see its earlier and current results. SDK users can call registered_tasks(workspace) and registered_status(workspace, task); use the current top-level outcome to read the result.
Older records may have fewer details. Missing information is shown as unavailable. Refreshing the display keeps the original results and does not approve or rerun a check.
지금 상태를 확인하세요.
작업 폴더를 선택하고 Task status를 열면 이전 결과와 현재 상태를 나란히 볼 수 있습니다. Refresh status는 검사나 AI 호출 없이 표시만 새로 고칩니다.
파일이나 검사 환경이 바뀌면 예전 PASS가 지금은 UNKNOWN으로 표시될 수 있습니다. 상세 내용에서 LC_ALL 언어 설정 같은 차이를 확인한 뒤, 다시 검사할지 판단하세요.
작업 카드를 펼치면 이전 결과와 현재 결과를 볼 수 있습니다. SDK에서는 registered_tasks(workspace)와 registered_status(workspace, task)를 사용하며, 현재 결과는 최상위 outcome으로 읽습니다.
오래된 기록에는 상세 정보가 적을 수 있습니다. 없는 정보는 확인할 수 없다고 표시합니다. 화면을 새로 고쳐도 기존 결과는 그대로 남으며, 검사 실행이나 승인은 이뤄지지 않습니다.
Claude Code connection
Follow Host connections to connect Claude Code. Keep the previous version, review the proposed hooks and apply the setup when ready. Existing permissions and unrelated MCP settings stay in place. This connection does not need Python.
Claude keeps its own approval steps. CALF shows the checks run for the task and the files they checked, so you can review the result before continuing.
Claude Code 연결
호스트 연결 안내를 따라 Claude Code를 연결하세요. 이전 버전을 남겨두고, 추가할 훅을 검토한 뒤 설정을 적용합니다. 기존 권한과 무관한 MCP 설정은 유지되며, Python 설치는 필요하지 않습니다.
Claude의 승인 단계는 그대로 사용합니다. CALF에서 작업에 실행한 검사와 그 대상 파일을 확인하고 결과를 검토하세요.
Connect a local MCP tool.
When a task needs a local tool, choose its server and policy in the work contract. Use the tool’s description to understand it, then review the proposed action before running it.
calf_tool_prepare or tool-prepare prepares a request for review. Check the task, arguments, targets, checks and expiry, then use your host’s approval flow to run it. Preparing the request does not run the tool.
Outputs are written to a new path and checked there. If the selected policy supports recovery, CALF can use the saved process result and matching files. When a call’s outcome is uncertain, check it before trying again. This route does not support deletion, overwriting, external uploads or recovery of remote jobs.
로컬 MCP 도구를 연결하세요.
작업에 로컬 도구가 필요하면 작업 계약에서 서버와 정책을 선택하세요. 도구 설명으로 기능을 살펴보고, 실제로 할 일은 실행 전에 검토합니다.
calf_tool_prepare 또는 tool-prepare로 검토할 요청을 준비합니다. 작업·인수·대상·검사·만료 시각을 확인한 뒤 호스트의 승인 절차로 실행하세요. 요청 준비만으로 도구가 실행되지는 않습니다.
결과는 새 경로에 만들고 그 파일을 검사합니다. 선택한 정책이 복구를 지원하면 저장된 프로세스 결과와 일치하는 파일을 이용할 수 있습니다. 호출 결과가 불분명할 때는 다시 시도하기 전에 상태를 확인하세요. 이 경로에서는 삭제·덮어쓰기·외부 전송·원격 작업 복구를 지원하지 않습니다.
Keep the task in focus
Open Attention to find tasks that need a decision. Choose a task to see its details; use the task’s controls when you are ready to act. Result summary brings together changed files and check results.
Use Shape request… to describe the result, what to keep and how to check it. Review the draft, then submit it when ready.
Press Find task… or Cmd/Ctrl + K to search recent tasks. Use the arrows to choose one, Enter to open it and Esc to close the search. You can search in Korean, Chinese and Japanese too.
Use Light | Dark to change the center panel’s theme. Use Show monitors, Close or Cmd/Ctrl + Shift + M to show or hide the monitors. They start folded in narrower windows; tasks keep running when they are hidden.
작업에 필요한 정보에 집중하기
Attention에서 판단이 필요한 작업을 찾고, 작업을 선택해 내용을 살펴보세요. 실제로 진행할 때는 해당 작업의 조작 버튼을 사용합니다. Result summary에는 변경 파일과 검사 결과가 모여 있습니다.
Shape request…로 원하는 결과, 그대로 둘 것, 확인 방법을 정리하세요. 초안을 검토하고 준비가 되면 제출합니다.
Find task… 또는 Cmd/Ctrl + K로 최근 작업을 검색하세요. 방향키로 고르고 Enter로 열며 Esc로 닫습니다. 한국어·중국어·일본어로도 찾을 수 있습니다.
Light | Dark로 중앙 패널의 테마를 바꿉니다. 모니터는 Show monitors·Close·Cmd/Ctrl + Shift + M으로 열고 닫습니다. 좁은 창에서는 처음에 접혀 있으며, 숨겨도 작업은 계속됩니다.
When something goes wrong.
| Symptom | Check |
|---|---|
| No automatic checks | Use unittest, explicitly configured pytest, or a single Cargo package with integration tests. Install missing tools yourself; unsupported layouts require an explicit advanced check specification. |
| Codex unavailable / login required | Use the existing Codex login and select its executable. Do not paste credentials into requests, logs or issues. |
| App will not open | Confirm OS/CPU, extract the whole package, check OS trust prompts and required WebView/GTK libraries. On macOS close any old instance and launch the exact new bundle. |
| Missing old jobs | Compare the records home. Legacy hook history is not the Workbench job list. An invalid explicit home does not silently fall back. |
| Memory pressure / provider failure | Read the specific failure. High whole-system memory does not prove the provider failed from memory pressure. |
| Editor missing | Refresh the list or Add editor manually. Select an installed application/executable, not a document. |
| UNKNOWN after a change | Open the task details and check the affected files, check results and cleanup status. Keep the error records while you resolve the problem. |
Before using a result, review the changed files and the checks your project ran. Checks cover what you selected; they cannot catch every kind of mistake. CALF uses your OS account and its permissions, so keep your usual system protections in place.
When asking for help, include your CALF version, OS, the steps that led to the problem and the error message. Remove API keys and private information before sharing logs or files. Package licence details are in THIRD-PARTY-NOTICES.txt and the included licence files.
잘 안 될 때 확인하세요.
| 증상 | 확인 사항 |
|---|---|
| 자동 검사가 없음 | unittest·명시적으로 설정을 마친 pytest·단일 Cargo 패키지의 통합 테스트를 지원합니다. 필요한 도구는 직접 설치하며, 지원하지 않는 구조는 고급 명시적 검사 명세를 사용하세요. |
| Codex 사용 불가·로그인 필요 | 기존 Codex 로그인을 사용하고 실행 파일을 선택하세요. 요청·로그·이슈에 인증정보를 붙여넣지 마세요. |
| 앱이 열리지 않음 | OS·CPU·전체 압축 해제·OS 신뢰 안내·필수 WebView/GTK를 확인하세요. macOS에서는 이전 인스턴스를 닫고 정확한 새 번들을 실행하세요. |
| 이전 작업이 없음 | 기록 위치를 비교하세요. 기존 훅 기록과 Workbench 작업 목록은 다릅니다. 잘못된 명시적 경로를 다른 경로로 조용히 대체하지 않습니다. |
| 메모리 압박·공급자 실패 | 표시된 오류와 실패 기록을 확인하세요. 시스템 메모리 사용량만으로 공급자 실패가 메모리 때문이라고 단정할 수 없습니다. |
| 에디터가 없음 | 목록을 새로 고치거나 Add editor로 추가하세요. 문서가 아니라 설치된 앱·실행 파일을 선택하세요. |
| 변경 후 UNKNOWN | 작업 상세에서 바뀐 파일, 검사 결과와 종료 상태를 확인하세요. 원인을 찾는 동안 오류 기록은 남겨두세요. |
결과를 사용하기 전에 바뀐 파일과 프로젝트에서 실행한 검사를 살펴보세요. 선택한 검사가 모든 종류의 오류를 찾을 수는 없습니다. CALF에도 운영체제 계정의 권한이 적용되므로 평소 사용하는 시스템 보호 기능을 유지하세요.
도움이 필요하면 CALF 버전, 운영체제, 문제가 생긴 순서와 오류 메시지를 알려주세요. 로그나 파일을 공유하기 전에는 API 키와 비공개 정보를 지워주세요. 라이선스 내용은 패키지의 THIRD-PARTY-NOTICES.txt와 라이선스 파일에서 확인할 수 있습니다.
Manage saved files.
Open Artifacts to see saved files, the tasks using them and why they are kept. Choose a workspace or task, then refresh the list. Preview a move before deciding whether to confirm it.
- Choose Preview index quarantine for a verified rebuildable index, or preview an eligible managed file in the file list.
- Review its exact path, size and SHA-256, then choose Confirm quarantine.
- In Retained moves, choose Review restore and confirm separately. A newer file is never overwritten.
Temporary files can be quarantined after their tasks release them and their retention period ends. Source, tests, existing logs, task records, contracts, settings and recovery files stay protected.
Quarantine keeps the files, so it does not free disk space. There is no automatic cleanup or permanent deletion. The optional managed-text API accepts up to 16 KiB per file and 128 files per journal. See the full guide.
저장된 파일을 관리하세요.
Artifacts에서 저장된 파일과 사용하는 작업, 보관 이유를 볼 수 있습니다. 작업 폴더나 작업 하나를 고르고 목록을 새로 고치세요. 파일을 옮기기 전에 미리보기를 보고 확인할 수 있습니다.
- 재생성 가능한 인덱스는 Preview index quarantine을 누릅니다. 조건을 충족한 관리 파일은 목록에서 미리보기를 엽니다.
- 경로·크기·SHA-256을 확인한 뒤 Confirm quarantine을 누릅니다.
- Retained moves의 Review restore에서 대상을 확인하고 별도로 복원을 승인합니다. 같은 위치에 새 파일이 있으면 덮어쓰지 않습니다.
임시 파일은 사용하는 작업이 참조를 해제하고 보관 기간이 지난 뒤 격리할 수 있습니다. 소스·테스트·기존 로그·작업 기록·계약·설정·복구 파일은 보호합니다.
격리는 파일을 보관하므로 디스크 공간이 늘어나지 않습니다. 자동 정리나 영구 삭제는 하지 않습니다. 선택적인 관리 텍스트 API는 파일당 16 KiB, 저널당 128개를 지원합니다. 자세한 안내를 참고하세요.