Skip to content

Repurposed c++ learning agent as a skill so that Scout can run it - #739

Open
TylerMSFT wants to merge 4 commits into
dotnet:mainfrom
TylerMSFT:update
Open

Repurposed c++ learning agent as a skill so that Scout can run it#739
TylerMSFT wants to merge 4 commits into
dotnet:mainfrom
TylerMSFT:update

Conversation

@TylerMSFT

Copy link
Copy Markdown
Contributor

No description provided.

Copilot AI lite review requested due to automatic review settings September 11, 2026 00:48
@TylerMSFT
TylerMSFT requested a review from a team as a code owner September 11, 2026 00:48

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Unresolved workflow and state-management issues could skip grading, lose progress, or select topics inconsistently.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

Repurposes the C++ learning agent as a persistent Scout-compatible skill.

Changes:

  • Adds coaching workflow and learning ledger.
  • Documents installation and Scout automation.
  • Removes the legacy agent and setup instructions.
File summaries
File Summary
CopilotStore/docs-cpp/skills/advanced-cpp-coach/SKILL.md Adds the C++ coaching skill and workflow.
CopilotStore/docs-cpp/skills/advanced-cpp-coach/cpp-coach-ledger.md Adds the learning progress ledger.
CopilotStore/docs-cpp/skills/advanced-cpp-coach/_readme.md Documents installation and automation.
CopilotStore/docs-cpp/agents/advanced-cpp-coach.agent.md Removes the superseded agent.
CopilotStore/docs-cpp/agents/_readme.txt Removes legacy setup instructions.
Review details

Suppressed comments (7)

CopilotStore/docs-cpp/skills/advanced-cpp-coach/SKILL.md:103

  • On the initial teaching turn there are no user answers yet, but these steps require grading and recording a quiz result immediately. That can mark an ungraded lesson as quizzed/mastered and leaves no clear point at which the later response is graded; if answers are absent, record only taught and stop until the user replies.
7. **Grade results**: assess the user's answers, explain corrections
   briefly.
8. **Update progress**: write the topic's status, date, and quiz score back
   to the ledger.

CopilotStore/docs-cpp/skills/advanced-cpp-coach/SKILL.md:93

  • With the initial ledger empty, there is no ordered topic inventory or cursor that defines what “the next new topic in chronological standard-version order” means. Unattended runs can therefore choose different topics or repeat/skip material, undermining the stated progression; add an explicit syllabus/seed topic and persist the selection cursor, or define a deterministic selection rule.
3. **Select the next topic**: prefer, in order, (a) continuing an unfinished
   topic from the last session, (b) a due spaced-repetition review, (c) the
   next new topic in chronological standard-version order. Skip anything
   already `mastered` and not due for review.

CopilotStore/docs-cpp/skills/advanced-cpp-coach/SKILL.md:60

  • The ledger is placed in the installed skill directory, which the README instructs users to copy under %USERPROFILE%\\.copilot\\skills\\.... A skill update or reinstall that replaces that directory can erase the mutable learning history, defeating the “persistent, cross-session” requirement. The existing cpp-blog-monitor keeps state under ~/.copilot/cpp-blog-monitor (SKILL.md:71-75); store this ledger in a separate per-user data path and have both instructions use it.
Maintain the ledger at `${SKILL_DIR}/cpp-coach-ledger.md`. Read it at the
start of every session before deciding what to teach, and write to it after
every lesson and quiz. This is what prevents repeating material across

CopilotStore/docs-cpp/skills/advanced-cpp-coach/SKILL.md:63

  • Because this explicitly permits multiple rows for one topic but never says which row is authoritative, a later review can leave an older due or low-score row beside a newer mastered row. The selection step then cannot reliably determine mastery or whether the topic is due; use one current-state row per topic or define that the latest Last covered row is authoritative.
Ledger schema (one row per topic per attempt):

CopilotStore/docs-cpp/skills/advanced-cpp-coach/SKILL.md:93

  • The documented focused use case (for example, “Explain ranges in C++20”) can be ignored here: the workflow always chooses a ledger topic, even when the user explicitly asked about a different feature. Honor an explicit user-requested topic first, and apply the ledger ordering only when no topic was requested.
3. **Select the next topic**: prefer, in order, (a) continuing an unfinished
   topic from the last session, (b) a due spaced-repetition review, (c) the
   next new topic in chronological standard-version order. Skip anything
   already `mastered` and not due for review.

CopilotStore/docs-cpp/skills/advanced-cpp-coach/_readme.md:1

  • The installation step names SKILL.MD, but the actual file and the path in line 13 are SKILL.md. A literal copy on a case-sensitive filesystem can therefore create a filename the skill loader does not discover; use the exact filename spelling here.
Add SKILL.MD and cpp-coach-ledger.md to %USERPROFILE%\\.copilot\\skills\\advanced-cpp-coach

CopilotStore/docs-cpp/skills/advanced-cpp-coach/_readme.md:13

  • This automation is unattended, and the skill explicitly says no-user runs must record taught and defer grading until the user responds (SKILL.md:113-116). The unconditional instruction to update the ledger after the quiz can therefore cause Scout to invent or persist a quiz result before any answers exist; make the update conditional on whether the user answered.
Use the Advanced C++ coach skill instructions from %USERPROFILE%\\.copilot\\skills\\advanced-cpp-coach\\SKILL.md. Before teaching, read %USERPROFILE%\\.copilot\\skills\\advanced-cpp-coach\\cpp-coach-ledger.md to see what's already been covered and what's due for review, and follow the skill's session workflow to pick today's topic — don't rely on this automation's pinned session history for continuity. After the lesson and quiz, update the ledger file with the result before finishing. Follow the skill's coaching behavior throughout.
  • Files reviewed: 5/5 changed files
  • Comments generated: 1
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread CopilotStore/docs-cpp/skills/advanced-cpp-coach/SKILL.md Outdated
TylerMSFT and others added 3 commits September 10, 2026 17:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants