follow-goal

Atribua ao agente um objetivo duradouro com uma condição de parada verificável e continue iterando entre turnos até que essa condição seja atendida. Use quando o usuário disser…

npx skills add https://github.com/microsoft/vscode-team-kit --skill follow-goal

Skill: Follow Goal

Run a long, durable objective across many turns toward a verifiable stop condition — instead of stopping after one normal exchange.

Requires session storage + artifact.

  1. Persist — Save goal.md to session storage. This is the durable source of truth, readable across turns.
  2. Mark as artifact — After saving, call setArtifacts to mark the file as a plan artifact so the user can see live goal state in the UI.

Do not write goal.md into the workspace. Do not rely on the artifact alone — artifacts are UI-only and cannot be read back by tools.

A goal has four parts. Capture all four before starting work:

  1. Objective — what to achieve, in one sentence.
  2. Stop condition — an observable, verifiable signal that "done" has been reached (a command exits 0, a file matches a spec, tests pass, parity check passes, etc.).
  3. Validation — the concrete commands or artifacts that prove progress (test command, build command, lint, diff against reference, review or rubber duck skills).
  4. Constraints — what NOT to change, scope boundaries, files/areas off-limits.

If any of these are missing or vague, ask the user before saving the goal. A goal without a verifiable stop condition is not a goal — it's a wish.

State

The goal lives in session storage as goal.md — a single markdown file with this shape:

---
status: active        # active | paused | done | cleared
created: 2026-05-16
checkpoints: 0
max_checkpoints: 20   # hard safety budget
---

# Objective
<one sentence>

# Stop Condition
<verifiable end state>

# Validation
- `<command or check>`
- ...

# Constraints
- <what not to change>

# Progress Log
<append a one-line checkpoint after each validation pass>

max_checkpoints is a safety budget. The agent MUST stop and report when it reaches this number even if the stop condition is not met, and ask the user how to proceed.

Sub-commands

The goal skill dispatches to this skill. Behavior depends on the argument:

InvocationAction
/goal <objective>Set. Capture the four parts above (asking the user for anything missing), write goal.md with status: active, then start the loop.
/goal (no args)Status. Read goal.md and report objective, stop condition, status, checkpoint count, and the last few progress log lines. Do not take any other action.
/goal pauseSet status: paused. Do not iterate. Tell the user how to resume.
/goal resumeSet status: active. Re-read the goal and continue the loop from the latest checkpoint.
/goal clearSet status: cleared and stop. Leave the file in place so the user can inspect history; do not delete it.

The Loop

When status: active, on every turn while there is work to do:

  1. Read goal.md (objective, stop condition, validation, progress log).
  2. Check stop condition. Run the validation commands. If the stop condition is met → set status: done, append a final checkpoint, report success, exit the loop.
  3. Plan one checkpoint of work — the next small, scoped step that moves toward the stop condition. Keep checkpoints small enough that validation runs between each.
  4. Do the work (edits, commands).
  5. Validate — run the validation commands.
  6. Append a one-line entry to the progress log in goal.md with what was done and the validation result.
  7. Increment checkpoints in the frontmatter.
  8. If checkpoints >= max_checkpoints → pause, report, ask the user how to proceed.
  9. If status was changed externally to paused or cleared → stop. Otherwise continue the loop.

The progress log entries should be short and machine-skimmable, e.g.:

- 2026-05-16 14:02 — Migrated `auth/` to new API. Tests: 184/184 pass.
- 2026-05-16 14:09 — Migrated `billing/`. Tests: 184/184 pass. Lint clean.

Discipline

  • Never continue past a failed validation without diagnosing the failure first. A failed validation is a checkpoint event — log it, fix the cause, then re-validate.
  • Never silently expand scope. If the work requires touching something in Constraints, pause and surface it.
  • Never invent a stop condition. If the user can't articulate one, the goal is not ready — push back.
  • Keep the progress log truthful. Do not log "tests pass" without running them.
  • One active goal at a time. If the user sets a new goal while one is active, ask whether to replace, pause, or clear the existing one first.

When to use vs. when not to

Use a goal when:

  • The work has a clear, verifiable end state (a test suite green, a migration complete, a build artifact matches a spec).
  • The work is too big for one turn but small enough that progress is measurable.
  • The user wants to step away while the agent iterates.

Do not use a goal for:

  • A loose grab-bag of unrelated tasks. Use a todo list instead.
  • Work where "done" is subjective (design polish, prose). Use normal review skills instead.
  • Anything destructive without rollback (production deploys, force pushes). The loop is not for irreversible operations.

Mais skills de microsoft

oss-growth
microsoft
Persona de growth hacker OSS
agent-framework-azure-ai-py
microsoft
Crie agentes do Azure AI Foundry usando o SDK Python do Microsoft Agent Framework (agent-framework-azure-ai). Use ao criar agentes persistentes com AzureAIAgentsProvider, usando ferramentas hospedadas (interpretador de código, pesquisa de arquivos, pesquisa na web), integrando servidores MCP, gerenciando threads de conversa ou implementando respostas em streaming. Abrange ferramentas de função, saídas estruturadas e agentes com múltiplas ferramentas.
development
airunway-aks-setup
microsoft
Configure o AI Runway no AKS — do cluster vazio ao modelo em execução. Abrange verificação do cluster, instalação do controlador, avaliação de GPU, configuração do provedor e primeira implantação. QUANDO: "configurar AI Runway", "integrar cluster AKS", "instalar AI Runway", "configuração do airunway", "implantar modelo no AKS", "inferência GPU no AKS", "configuração KAITO no AKS", "executar LLM no AKS", "vLLM no AKS", "configurar serviço de modelo no AKS", "controlador AI Runway".
devops
appinsights-instrumentation
microsoft
Orientação para instrumentar aplicações web com Azure Application Insights. Fornece padrões de telemetria, configuração de SDK e referências de configuração. QUANDO: como instrumentar o app, SDK do App Insights, padrões de telemetria, o que é App Insights, orientação sobre Application Insights, exemplos de instrumentação, melhores práticas de APM.
devops
applicationinsights-web-ts
microsoft
Instrumente aplicativos de navegador/web com o SDK JavaScript do Application Insights (@microsoft/applicationinsights-web). Use para Real User Monitoring (RUM) — visualizações de página, cliques, dependências AJAX/fetch, exceções, eventos personalizados e rastreamentos de agentes GenAI no lado do navegador correlacionados a rastreamentos OpenTelemetry no backend. Abrange o Script de Carregamento do SDK e a configuração via npm, extensões de frameworks (React, React Native, Angular), Click Analytics, inicializadores de telemetria e convenções semânticas GenAI do OTel para spans de agente/ferramenta/modelo emitidos pelo navegador.
devops
azure-ai-anomalydetector-java
microsoft
Crie aplicativos de detecção de anomalias com o SDK do Azure AI Anomaly Detector para Java. Use ao implementar detecção de anomalias univariada/multivariada, análise de séries temporais ou monitoramento com IA.
development
azure-ai-language-conversations-py
microsoft
Implemente o reconhecimento de linguagem conversacional (CLU) usando o SDK Python azure-ai-language-conversations. Use ao trabalhar com ConversationAnalysisClient para analisar intenção e entidades de conversas, criar recursos de NLP ou integrar o reconhecimento de linguagem em aplicativos.
development
azure-ai-ml-py
microsoft
SDK v2 do Azure Machine Learning para Python. Use para workspaces de ML, jobs, modelos, conjuntos de dados, computação e pipelines. Gatilhos: "azure-ai-ml", "MLClient", "workspace", "registro de modelos", "jobs de treinamento", "conjuntos de dados".
development