AGENT SKILL

feedback-learning

Classify and record explicit corrective feedback without turning skills or instructions into append-only knowledge dumps.

License 许可
MIT
所属仓库
microsoft/vscode
最近更新
2026-11-11
Stars
★ 20w
Forks
4.4w

01 前言 Front Matter

name
feedback-learning
description
Classify and record explicit corrective feedback without turning skills or instructions into append-only knowledge dumps.

02 资源文件 9

03 SKILL.md 正文

Feedback learning

Use this skill when a user explicitly corrects an implementation or design approach, rejects a pattern, or asks the agent to learn from feedback, except when the user invokes the literal learn! trigger.

Literal learn! requests are governed exclusively by .github/instructions/learnings.instructions.md and are outside this skill's scope. Do not replace or reinterpret that instruction.

Goal

Preserve reusable knowledge in the smallest authoritative artifact. A correction is not automatically a permanent rule.

Workflow

  1. Identify the correction

    • What was wrong?
    • Why was it wrong?
    • What approach did the user prefer?
    • Which paths or subsystem does it affect?
  2. Search before writing

    • Check applicable instructions, skills, design documents, tests, and scoped learning files.
    • Update an existing rule instead of adding a duplicate.
  3. Classify the feedback

    Feedback kind Destination
    Task-specific preference or one-off adjustment Do not persist
    Concrete behavior that must not regress Regression test
    Stable subsystem architecture or product invariant Relevant design/specification document
    Universal repository rule Applicable instruction file
    Reusable but not yet mature or proven guidance .github/learnings/<area>.md
    Tool-driven workflow Relevant skill
  4. Generalize carefully

    • Preserve the principle, not the incident chronology.
    • Do not include temporary symbol names, line numbers, or implementation details unless they define the durable contract.
    • Do not turn a single rejected implementation into a universal prohibition without broader evidence.
  5. Record once

    • Design documents and tests are authoritative.
    • A learning inbox entry is temporary. When promoted, remove the inbox entry in the same change.
    • Never copy the same rule into a skill, instruction, and design document.
    • Before adding an inbox entry, compact the target file using the maintenance rules below.
  6. Validate

    • Confirm the destination applies to the affected path.
    • Check links and remove superseded or contradictory guidance.

Learning inbox format

Create or update .github/learnings/<area>.md using:

# Area learning inbox

Last reviewed: YYYY-MM-DD

## Short topic

- **Scope:** `affected/path/**`
- **Learning:** Generalized guidance in one or two sentences.
- **Evidence:** Why this is reusable beyond the current task.
- **Disposition:** Candidate for `<design document, instruction, skill, or test>`.

Keep entries concise. Each area inbox is limited to ten topics and 8 KB. If a new entry would exceed either limit, promote, merge, or remove existing entries before deciding whether the new feedback deserves persistence.

Reading learnings

Do not inject learning inboxes into every task. Search the relevant file's headings and Scope fields first, then read only matching entries. Learning inboxes supplement source code, tests, and design documents; they are not a prerequisite for unrelated work and are not authoritative over them.

Compaction and garbage collection

Compact an inbox before every write. Also perform a full review when an inbox is at either limit or its Last reviewed date is more than 90 days old when read. During review:

  • promote stable architectural guidance into the owning specification;
  • encode concrete behavior in tests;
  • merge overlapping entries into one general principle;
  • remove obsolete, contradicted, already-promoted, or weakly supported entries;
  • update Last reviewed after checking every retained entry against the current source and authoritative documentation.

An inbox may shrink to zero entries. Do not retain a learning merely because it might be useful someday.

04 同仓库更多 Skills

microsoft
microsoft/vscode

sweeper-query

Answer natural-language questions about the VS Code Sweeper's published issue index (index-<name>.json for microsoft/vscode and the enrolled family repos) — which issues are agent-ready to implement or plan, what the sweeper proposed for an assignee or area, whether the sweeper knows a report as a duplicate, the highest-value open bugs in a lane — and, for one issue, the review's full record (evidence with file citations, fix brief, proposed comment). Use ONLY when the request explicitly names the sweeper — "sweeper", "vscodesweeper", "sweeper-query", a sweeper verdict, record, brief or index, an agent-ready issue — or asks what "the sweeper" found, proposed or knows. Do NOT use for general questions about issues, duplicates, priorities or ranking that do not mention the sweeper. Read-only; discovery only.

★ 20w
microsoft
microsoft/vscode

update-skills

Create or update repository skills and instructions when major learnings are discovered during a session. Use when the user says "learn!", when a significant pattern or pitfall is identified, or when reusable domain knowledge should be captured for future sessions.

★ 20w
microsoft
microsoft/vscode

update-pr

Update the pull request for the current session. Use when the user wants to push new changes to an existing PR.

★ 20w
microsoft
microsoft/vscode

sync

Sync the current session branch with its upstream branch, or publish the current session branch to a remote. Use when the user asks to sync a branch, pull latest changes, rebase onto upstream, push current branch, publish branch, or set upstream.

★ 20w
microsoft
microsoft/vscode

sync-upstream

Update a stale session branch by rebasing onto the latest origin. Use when the upstream has moved significantly and the session needs to catch up, resolving conflicts by preserving upstream changes and adapting session work to fit.

★ 20w
microsoft
microsoft/vscode

merge

Merge changes from the topic branch to the merge base branch. Use when the user wants to merge their session's work back to the base branch.

★ 20w