Mpt ext task update docs from changes
Skill softwareone-platform/mpt-extension-skills/skills/mpt-ext-task-update-docs-from-changes
Only update repository docs to match a code change set (docs/*, README.md, AGENTS.md) for unstaged, uncommitted, last-commit, or branch-diff changes. A building block: no self-check or staging.From its SKILL.md
npx -y skills add softwareone-platform/mpt-extension-skills --skill mpt-ext-task-update-docs-from-changesAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
5.9 KB, as published. Nobody here has run it
Update Docs From Changes
Purpose
Bring repository documentation (docs/*, README.md, AGENTS.md) up to date with a specific set of code changes, following the shared documentation guideline.
Use When
- Code or behaviour changed and the matching documentation must be updated.
- The user wants documentation regenerated from unstaged, uncommitted, last-commit, or branch-diff changes.
- A change is ready for review and its documentation impact must be reflected first.
Do Not Use When
- The repository has no documentation yet and the full required set must be authored from scratch (use
mpt-ext-task-write-documentation). - The task is to commit, open a pull request, or transition Jira state.
- The task is to verify documentation without editing it.
Inputs
- A target repository that is a Git working tree with history.
- The change source to document:
unstaged: working tree vs indexuncommitted: working tree vsHEAD(staged + unstaged)last-commit:HEAD~1..HEADbranch-diff:<base>...HEAD(base defaults toorigin/main)
- Optional base ref when the source is
branch-diff. - Installed shared package root when shared guidance is needed:
${MPT_EXTENSION_SKILLS_HOME:-$HOME/.mpt-extension-skills}/current
Workflow
- Build repository context first.
- Read the target repository
AGENTS.mdonce per session. If you already loaded it earlier in this session and still have its full contents, reuse them instead of re-reading; if the context was summarized or you are unsure it is complete, read it again. Do not pre-load shared docs in this step; read them lazily only when the repository points to them. - Read repository-specific docs when they exist, because they may extend or override shared guidance.
- Read shared docs required by this skill (see Shared References) regardless of repository pointers; read additional shared docs only when the repository explicitly points to them.
- Resolve shared docs from
${MPT_EXTENSION_SKILLS_HOME:-$HOME/.mpt-extension-skills}/currentwhen available; otherwise read them from themainbranch of the shared GitHub repository.
- Determine the change source.
- Use the source the user requested.
- If the source is ambiguous, ask the user before running. For
branch-diff, confirm the base ref.
- Collect the change set with the bundled script.
python3 "${MPT_EXTENSION_SKILLS_HOME:-$HOME/.mpt-extension-skills}/current/skills/mpt-ext-task-update-docs-from-changes/scripts/collect_changes.py" \
--source branch-diff --base origin/main
- Use
affected_docsto know which documents each changed path most likely affects. - Use
missing_doc_updatesto see which affected docs were not yet touched in this change set. - Treat
always_review(README.md,AGENTS.md) as documents that need a judgement call, because behaviour and structure changes affecting them are not detectable from paths. - Treat
unmapped_codeas changes with no default mapping; decide their documentation impact manually. Modified (not added or deleted) source files map todocs/architecture.mdonly through a structural signal, so ordinary edits land here for a manual call rather than floodingmissing_doc_updates. - Treat
stale_doc_referencesas likely-stale references: each entry is an existing document that still mentions a path removed or renamed in this change set; confirm and fix or remove the reference.
- Update the affected documents.
- For each affected document, read the current document and the actual change content, then edit only what the change affects.
- Follow
standards/documentation.mdfor structure, topic boundaries, and required-set expectations. - Do not duplicate shared standards; link to them and document only repository-specific behaviour, exceptions, or context.
- Update
README.mdnavigation andAGENTS.mdreading order only when structure, entry points, or public behaviour actually changed.
- Report the result.
- List the documents updated and the change paths that drove each update.
- List affected documents you intentionally left unchanged, with a short reason.
- Surface anything that needs human judgement (for example a behaviour change whose user-facing impact is unclear).
Guardrails
- Never document behaviour that is not present in the change set; do not invent features or future plans.
- Never duplicate shared engineering rules that already live in
standards/; link to them instead. - Never edit documentation unrelated to the change set.
- Never reproduce the deterministic change collection in prose; always use the bundled script.
- Never stage, commit, push, open a pull request, or change Jira state in this task; the invoking workflow stages the updated documentation files.
- Keep edits minimal and scoped to the change; do not rewrite untouched sections.
Shared References
standards/documentation.md: required documentation set, structure, and authoring rules.
Bundled Resources
scripts/collect_changes.py- Inputs:
--source {unstaged,uncommitted,last-commit,branch-diff}, optional--base - Output: JSON with
source,base,changed_files,code_changes,doc_changes,affected_docs,missing_doc_updates,always_review, andunmapped_code - Runtime path:
${MPT_EXTENSION_SKILLS_HOME:-$HOME/.mpt-extension-skills}/current/skills/mpt-ext-task-update-docs-from-changes/scripts/collect_changes.py
- Inputs:
Expected Outcome
The documentation affected by the given change set is updated in line with standards/documentation.md, README/AGENTS are adjusted only when structure or behaviour changed, and the result clearly states what was updated and what was intentionally left unchanged.