con un clic
forge-status
Dashboard do projeto — milestone ativo, slices, proxima acao.
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Menú
Dashboard do projeto — milestone ativo, slices, proxima acao.
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Basado en la clasificación ocupacional SOC
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