with one click
forge-status
Dashboard do projeto — milestone ativo, slices, proxima acao.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
Dashboard do projeto — milestone ativo, slices, proxima acao.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Executa o milestone inteiro de forma autonoma ate concluir.
Executa exatamente uma unidade de trabalho e para (step mode).
Task autonoma sem milestone — brainstorm, discuss, plan, execute.
Gerencia múltiplas contas Claude e troca entre elas (setup-token). Use ao esgotar a sessão de uma conta.
Qualidade do codebase — lint, nomenclatura. Flags: --fix, --paths.
Configuracoes do Forge — status line, hooks, MCPs.
| name | forge-status |
| description | Dashboard do projeto — milestone ativo, slices, proxima acao. |
| allowed-tools | Read, Glob, Bash |
Before doing anything else, run these in parallel:
ls CLAUDE.md 2>/dev/null && echo "ok" || echo "missing"
ls .gsd/STATE.md 2>/dev/null && echo "ok" || echo "missing"
PREFS_ENGINE="$FORGE_SCRIPTS_DIR/forge-prefs.js"; [ -f "$PREFS_ENGINE" ] || PREFS_ENGINE="$HOME/.claude/scripts/forge-prefs.js"
REPO=$(node "$PREFS_ENGINE" --resolved --key repo_path 2>/dev/null | node -e "let d='';process.stdin.on('data',c=>d+=c).on('end',()=>{try{const v=JSON.parse(d).value;process.stdout.write(v?String(v):'')}catch{process.stdout.write('')}})")
if [ -n "$REPO" ] && [ -d "$REPO/.git" ]; then
LOCAL=$(cd "$REPO" && git describe --tags --always 2>/dev/null)
REMOTE=$(cd "$REPO" && git ls-remote --tags origin 2>/dev/null | grep -oE 'v[0-9]+\.[0-9]+\.[0-9]+$' | sort -V | tail -1)
echo "FORGE_VERSION=$LOCAL"
[ -n "$REMOTE" ] && [ "$REMOTE" != "$(cd "$REPO" && git describe --tags --abbrev=0 2>/dev/null)" ] && echo "FORGE_UPDATE=$REMOTE" || echo "FORGE_UPDATE=none"
else
echo "FORGE_VERSION=unknown"
echo "FORGE_UPDATE=none"
fi
Se CLAUDE.md não existe: Stop and tell the user:
Projeto não inicializado. Execute
/forge-initprimeiro — isso cria oCLAUDE.mdque restaura o contexto automaticamente ao reabrir o chat.
Se .gsd/STATE.md não existe: Stop and tell the user:
Nenhum projeto GSD encontrado neste diretório. Execute
/forge-initpara começar.
Se .gsd/AUTO-MEMORY.md não existe: Create it silently before proceeding:
<!-- gsd-auto-memory | project: <from PROJECT.md or directory name> | extraction_count: 0 -->
<!-- ranked by: confidence × (1 + hits × 0.1) | cap: 50 active -->
if command -v forge-status >/dev/null 2>&1; then
forge-status $ARGUMENTS
else
ENGINE="$HOME/.claude/scripts/forge-status.js"
if [ ! -f "$ENGINE" ]; then
PREFS_ENGINE="$FORGE_SCRIPTS_DIR/forge-prefs.js"; [ -f "$PREFS_ENGINE" ] || PREFS_ENGINE="$HOME/.claude/scripts/forge-prefs.js"
REPO_PATH=$(node "$PREFS_ENGINE" --resolved --key repo_path 2>/dev/null | node -e "let d='';process.stdin.on('data',c=>d+=c).on('end',()=>{try{const v=JSON.parse(d).value;process.stdout.write(v?String(v):'')}catch{process.stdout.write('')}})")
ENGINE="$REPO_PATH/scripts/forge-status.js"
fi
if [ ! -f "$ENGINE" ]; then
echo "forge-status: engine não encontrado — rode /forge-update ou /forge-init." >&2
else
node "$ENGINE" $ARGUMENTS
fi
fi
Repasse a saída do comando acima exatamente como está (verbatim) ao usuário. NÃO resuma, NÃO reformate, NÃO re-renderize em outro layout — o engine já produz o dashboard final. Qualquer reprocessamento gasta tokens à toa e quebra o propósito zero-token desta skill.
$ARGUMENTS