knowledge-sync
Skill314 starsChanged 7 months agoMITView on GitHub
Sync ADO work items and ICM incidents to the persistent knowledge log. Invoked automatically by /review, /workitem, and /pac-cli-update when knowledge is stale.
3 other projects use a version of this.
Adopted by
Most recently taken up by
- pierrebelin/claude-code-toolkittheir own version, first seen Nov 1, 2026
- maroffo/claude-forgetheir own version, first seen Oct 25, 2026
- Isabella-a/Skillstheir own version, first seen Oct 19, 2026
Other versions3 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 3
- maroffo/claude-forge★ 17same name
- pierrebelin/claude-code-toolkit★ 7same name
- Isabella-a/Skills★ 2same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository8 other files it gives its agents.
- architectureSkill
- create-prSkill
- debug-agentSkill
- fix-dependenciesSkill
- pac-cli-updateSkill
- reviewSkill
- security-alertsSkill
- workitemSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
16 rules. About 0 are common, 11 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈11
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 22
All persistent knowledge lives in two files in the memory directory:
- Very specific: line 27
Update this with confirmed facts extracted from ado-knowledge.md.
- Very specific: line 43
If found: use that date as @since in WIQL queries below
- Very specific: line 44
If not found: use @Today - 90 as @since (first-run bootstrap)
- Very specific: line 57
If az login is needed (browser flow — no username/password):
- Distinctive: line 139
Only add facts explicitly stated in resolutions or ICM mitigations — no speculation.
- Distinctive: line 175
Update only files where new facts apply.
- Distinctive: line 180
Update auth table or bundled dep notes if changed
- Distinctive: line 184
Add new package conflict patterns to Strategy A hard rules
- Distinctive: line 185
Add new formally risk-accepted vulnerabilities to the known accepted risks list
- Distinctive: line 189
Add to review checklist any new breaking-change patterns from resolved work items
- Distinctive: line 193
Add recurring fix patterns so future similar work items resolve faster
- Distinctive: line 197
Update the Key architecture facts and Dependency hard rules sections with any new confirmed facts
- Distinctive: line 198
Do NOT add speculation — only confirmed fixes from resolved items
- Very specific: line 204
After all appends and skill updates are complete, update the ## Last sync line at the top of ado-knowledge.md:
- Distinctive: line 221
Nothing changed: if no new items found since last sync, say so and exit cleanly
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Knowledge Sync — ADO Work Items + ICM Incidents
Reads ADO work items and ICM incidents for the PPBT area, extracts patterns and fixes, and appends them to a persistent knowledge log. Each run only fetches items newer than the last sync — knowledge accumulates over time rather than being overwritten.
Invoke as: /knowledge-sync
Also invoked automatically (inline) by /review, /workitem, and /pac-cli-update
when the knowledge base is more than 7 days old. No manual scheduling needed.
How the knowledge base works
All persistent knowledge lives in two files in the memory directory:
memory/ado-knowledge.md— append-only log of every work item and incident processed, grouped by run date. Never overwrite — only append new entries.memory/MEMORY.md— the live distilled summary: hard rules, patterns, and skill inventory. Update this with confirmed facts extracted fromado-knowledge.md.
The sync tracks progress via a ## Last sync header in ado-knowledge.md. Each run reads
that date, queries only items changed after that date, appends new findings, then updates
the header. On the very first run (no ado-knowledge.md exists), query the past 90 days as
the bootstrap window.
Step 1 — Read last sync date
# Check if knowledge log exists and find last sync date
cat memory/ado-knowledge.md 2>/dev/null | grep "## Last sync" | tail -1- If found: use that date as
@sincein WIQL queries below - If not found: use
@Today - 90as@since(first-run bootstrap)
Step 2 — Configure ADO org (once per session)
az devops configure \
--defaults organization=https://dev.azure.com/dynamicscrm project=OneCRM 2>&1
az devops configure --list 2>&1If az login is needed (browser flow — no username/password):
az login --use-device-codeStep 3 — Query ADO for items changed since last sync
# Active items (all — re-read on every sync to catch state changes)
az boards query --wiql "
SELECT [System.Id], [System.Title], [System.State], [System.WorkItemType],
[System.Tags], [Microsoft.VSTS.Common.Priority], [System.ChangedDate]
FROM WorkItems
WHERE [System.AreaPath] UNDER 'OneCRM\Client\UnifiedClient\AppLifeCycle\PPBT Extensions'
AND [System.State] NOT IN ('Closed', 'Resolved', 'Done')
ORDER BY [Microsoft.VSTS.Common.Priority] ASC, [System.ChangedDate] DESC
" --output json 2>&1
# Items resolved/closed since last sync (only NEW ones)
az boards query --wiql "
SELECT [System.Id], [System.Title], [System.State], [System.WorkItemType],
[System.Tags], [Microsoft.VSTS.Common.Resolution], [System.ChangedDate]
FROM WorkItems
WHERE [System.AreaPath] UNDER 'OneCRM\Client\UnifiedClient\AppLifeCycle\PPBT Extensions'
AND [System.State] IN ('Closed', 'Resolved', 'Done')
AND [System.ChangedDate] > '<last-sync-date>'
ORDER BY [System.ChangedDate] DESC
" --output json 2>&1For each returned item, fetch full detail (description, repro steps, resolution, comments). Cap at 30 full-detail fetches per run — summarise the rest by title + state only:
az boards work-item show --id <id> --output json 2>&1Step 4 — Query ICM incidents
# Check if icm CLI is available
icm --version 2>&1 || echo "icm CLI not available — falling back to ADO cross-references"
# If available
icm query \
--owning-service "Power Platform Build Tools" \
--status "Active,Resolved" \
--modified-after "<last-sync-date>" \
--top 50 \
--output json 2>&1
# Fallback: find IcM references in ADO work items
az boards query --wiql "
SELECT [System.Id], [System.Title], [System.Description], [System.ChangedDate]
FROM WorkItems
WHERE [System.AreaPath] UNDER 'OneCRM\Client\UnifiedClient\AppLifeCycle\PPBT Extensions'
AND [System.Description] CONTAINS 'IcM'
AND [System.ChangedDate] > '<last-sync-date>'
ORDER BY [System.ChangedDate] DESC
" --output json 2>&1Step 5 — Classify findings
For each new item, assign one or more categories:
| Category | Where it goes |
| Recurring bug / root cause | ado-knowledge.md log + skills/architecture/SKILL.md debug runbook |
| Known workaround | ado-knowledge.md log + skills/architecture/SKILL.md debug runbook |
| Architecture decision | ado-knowledge.md log + skills/architecture/SKILL.md layer notes |
| Dependency conflict / vuln pattern | ado-knowledge.md log + skills/fix-dependencies/SKILL.md hard rules |
| Task contract change (input name, GUID) | ado-knowledge.md log + skills/create-pr/SKILL.md review checklist |
| ICM mitigation / guidance | ado-knowledge.md log + skills/architecture/SKILL.md debug runbook |
Only add facts explicitly stated in resolutions or ICM mitigations — no speculation.
Step 6 — Append to memory/ado-knowledge.md
Append a new dated section. Never delete or overwrite previous sections.
## Sync <YYYY-MM-DD>
**Last sync:** <YYYY-MM-DD>
### Active items (<N> total)
- <ID>: <title> [<priority>] [<type>]
- ...
### Newly resolved since last sync (<N> items)
#### <ID> — <title>
- **Type:** Bug / Task / Feature
- **Resolution:** <verbatim resolution text>
- **Root cause:** <extracted from description>
- **Fix:** <what was changed>
- **Category:** <from classification above>
### ICM incidents
- <IcM-ID>: <title> — <mitigation summary>
### Patterns extracted this run
- <any new hard rule, workaround, or architecture fact>Step 7 — Update skills with new confirmed facts
Update only files where new facts apply. Skip files with no relevant new findings.
skills/architecture/SKILL.md
- Append to Debug Runbook by Symptom for any new recurring issue with a confirmed fix
- Update auth table or bundled dep notes if changed
skills/fix-dependencies/SKILL.md
- Add new package conflict patterns to Strategy A hard rules
- Add new formally risk-accepted vulnerabilities to the known accepted risks list
skills/create-pr/SKILL.md
- Add to review checklist any new breaking-change patterns from resolved work items
skills/workitem/SKILL.md
- Add recurring fix patterns so future similar work items resolve faster
memory/MEMORY.md
- Update the Key architecture facts and Dependency hard rules sections with any new confirmed facts
- Do NOT add speculation — only confirmed fixes from resolved items
Step 8 — Update last sync date
After all appends and skill updates are complete, update the ## Last sync line at the top of ado-knowledge.md:
# The sync date is updated by the append in Step 6 — confirm it is correct
grep "## Last sync" memory/ado-knowledge.md | tail -1Final report
Print:
- Sync window:
<last-sync-date>→<today> - Items processed: N active, N newly resolved, N ICM incidents
- New facts extracted: list each pattern/rule added
- Skills updated: list each file and what section changed
- Nothing changed: if no new items found since last sync, say so and exit cleanly
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

