commit
無料Create a well-formed git commit from current changes using session history for rationale and summary; use when asked to commit, prepare a commit message, or finalize staged work.
日本語の概要は準備中です。原文の説明を表示しています。
Live Borg debugging by exec-ing into the borg-web-ui Docker container. Use when debugging borg commands, writing tests against real borg output, developing borg 2.0 features, or verifying borg behavior before writing code.
インストールする前に、エージェントに与えられる指示の中身を確認できます。
You have direct access to a running borg-web-ui Docker container. Use this to run real borg/borg2 commands, inspect actual output, and use that ground truth to write code, tests, and fixes.
borg-web-uiborg (e.g. /usr/bin/borg or via PATH)borg2 (e.g. /usr/local/bin/borg2)/app/data (database, SSH keys, repos)borg (use gosu borg or su borg -c)Run commands inside the container using:
docker exec -it borg-web-ui <command>
# or as the borg user:
docker exec -u borg borg-web-ui <command>
# or for multi-step shell sessions:
docker exec borg-web-ui bash -c "<cmd1> && <cmd2>"
When the user asks to debug, test, or develop borg functionality:
docker ps --filter name=borg-web-ui --format "{{.Names}} {{.Status}}"
If it's not running, tell the user to start it: docker compose up -d
# Check borg versions available
docker exec borg-web-ui bash -c "borg --version 2>/dev/null; borg2 --version 2>/dev/null"
# Check what repos are configured (from DB or env)
docker exec borg-web-ui bash -c "ls /data/ 2>/dev/null"
Run the exact borg command you need to test. Always capture both stdout and stderr:
docker exec -u borg borg-web-ui bash -c "BORG_PASSPHRASE='' borg list /path/to/repo 2>&1"
# For borg2:
docker exec -u borg borg-web-ui bash -c "BORG_PASSPHRASE='' borg2 rinfo /path/to/repo 2>&1"
Key environment variables to set when running borg commands:
BORG_PASSPHRASE — passphrase (empty string if unencrypted)BORG_UNKNOWN_UNENCRYPTED_REPO_ACCESS_IS_OK=yes — skip prompts for unencrypted reposBORG_RSH — custom SSH command if neededBORG_REMOTE_PATH — path to borg on remote (for SSH repos)After seeing the real output:
borg ... --json wherever possible)| Task | Borg 1 | Borg 2 |
|---|---|---|
| Init repo | borg init REPO | borg2 rcreate REPO |
| Repo info | borg info REPO | borg2 rinfo REPO |
| Delete repo | borg delete REPO | borg2 rdelete REPO |
| List archives | borg list REPO | borg2 list REPO |
| Archive info | borg info REPO::ARC | borg2 info REPO::ARC |
| Create | borg create REPO::ARC src/ | borg2 create REPO::ARC src/ |
| Extract | borg extract REPO::ARC | borg2 extract REPO::ARC |
| Prune | borg prune REPO | borg2 prune REPO |
| Compact | N/A (auto) | borg2 compact REPO (REQUIRED after delete/prune) |
| Check | borg check REPO | borg2 check REPO |
| Mount | borg mount REPO::ARC MNTPT | borg2 mount REPO::ARC MNTPT |
When you need a throwaway repo to test against:
# Create a temp repo (unencrypted for easy testing)
docker exec -u borg borg-web-ui bash -c "
BORG_UNKNOWN_UNENCRYPTED_REPO_ACCESS_IS_OK=yes \
borg init --encryption=none /tmp/test-repo-1 2>&1 &&
echo 'test content' > /tmp/testfile.txt &&
borg create /tmp/test-repo-1::archive-1 /tmp/testfile.txt 2>&1 &&
borg list /tmp/test-repo-1 2>&1
"
# Same for borg2
docker exec -u borg borg-web-ui bash -c "
BORG_UNKNOWN_UNENCRYPTED_REPO_ACCESS_IS_OK=yes \
borg2 rcreate --encryption=none /tmp/test-repo-2 2>&1 &&
echo 'test content' > /tmp/testfile.txt &&
borg2 create /tmp/test-repo-2::archive-1 /tmp/testfile.txt 2>&1 &&
borg2 list /tmp/test-repo-2 2>&1
"
Always prefer --json flag to get structured output you can map directly to Python:
docker exec -u borg borg-web-ui bash -c "borg list --json /tmp/test-repo-1 2>&1"
docker exec -u borg borg-web-ui bash -c "borg info --json /tmp/test-repo-1::archive-1 2>&1"
docker exec -u borg borg-web-ui bash -c "borg2 rinfo --json /tmp/test-repo-2 2>&1"
# Check what Python modules are available
docker exec borg-web-ui bash -c "cd /app && python3 -c 'from app.core.borg2 import *; print(\"ok\")'"
# Run a quick Python snippet against the live app
docker exec borg-web-ui bash -c "cd /app && python3 -c \"
import asyncio
from app.core.borg2 import borg2_rinfo
result = asyncio.run(borg2_rinfo('/tmp/test-repo-2'))
print(result)
\""
After debugging, clean up temp repos:
docker exec borg-web-ui bash -c "rm -rf /tmp/test-repo-1 /tmp/test-repo-2 /tmp/testfile.txt"
--json wherever possible — map the exact field names into Python dicts.2>&1.まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Create a well-formed git commit from current changes using session history for rationale and summary; use when asked to commit, prepare a commit message, or finalize staged work.
日本語の概要は準備中です。原文の説明を表示しています。
Continue a multi-phase engineering spec from its progress table. Use when the user says /continue-spec, "continue the spec", "continue the operations feature", or asks what the next phase is. Runs the next step (plan, implement, review) in this session on the model the spec names, stopping at the spec's gates. Never uses subagents.
日本語の概要は準備中です。原文の説明を表示しています。
Land a PR by monitoring conflicts, resolving them, waiting for checks, and squash-merging when green; use when asked to land, merge, or shepherd a PR to completion.
日本語の概要は準備中です。原文の説明を表示しています。
Use Symphony's `linear_graphql` client tool for raw Linear GraphQL operations such as comment editing and upload flows.
日本語の概要は準備中です。原文の説明を表示しています。
Pull latest origin/main into the current local branch and resolve merge conflicts (aka update-branch). Use when Codex needs to sync a feature branch with origin, perform a merge-based update (not rebase), and guide conflict resolution best practices.
日本語の概要は準備中です。原文の説明を表示しています。
Push current branch changes to origin and create or update the corresponding pull request; use when asked to push, publish updates, or create pull request.
日本語の概要は準備中です。原文の説明を表示しています。