Incrementally update domain knowledge — add new packages, refine workflows, or extend template content without re-running the full configuration interview. Use after initial /configure-domain setup.
Install
npx skillscat add smestern/sciagent/update-domain Install via the SkillsCat registry.
Update Domain Knowledge
Incrementally update your SciAgent domain configuration. Use this after
the initial /configure-domain setup to add new packages, refine
workflows, or extend template content without starting from scratch.
When to Use
- You want to add a new package to your domain configuration.
- Your analysis workflows have changed and need updating.
- You discovered a new tool or library relevant to your research.
- You want to refine value ranges, parameters, or guardrails.
- You have new example data that reveals additional file formats or
column patterns.
Procedure
Step 1 — Understand the Change
Ask the user what they want to update. Common scenarios:
- "Add package X" — Discover, document, and integrate a new
package into the template files. - "Update workflows" — Modify or add workflow steps in
workflows.md. - "Change parameters" — Update analysis parameters, value ranges,
or precision tables inoperations.md. - "Add a custom skill" — Create a new skill entry in
skills.md. - "Full refresh" — Re-audit all templates and fill any remaining
placeholders (suggest/configure-domaininstead if most content
is missing).
Step 2 — Audit Current State
Scan the relevant template files to understand what's already configured:
- Search for files matching
*.instructions.md,operations.md,workflows.md,tools.md,library_api.md,skills.md. - Identify which sections have domain content vs. unfilled
<!-- REPLACE: ... -->placeholders. - Note any domain-specific content that might conflict with the
proposed changes. - Brief the user: "Here's your current configuration in the affected
files. I'll update X and Y."
Step 3 — Discover (If Adding Packages)
If the user wants to add new packages:
- Fetch PyPI metadata:
https://pypi.org/pypi/{name}/json - If available, fetch the GitHub README for capabilities overview.
- Present the package info and ask for confirmation.
- If the user doesn't know the exact package name, use broader
searches based on their description.
Step 4 — Propose Edits
Before making changes, show the user exactly what will be modified:
- Which files will be edited
- What content will be added or changed
- Whether any existing content will be affected
Ask for confirmation before proceeding.
Step 5 — Apply Updates
Use editFiles to make the confirmed changes:
- Adding a package: Update
library_api.mdwith API reference,tools.mdwith tool documentation, andoperations.mdif the
package introduces new analysis parameters or workflows. - Updating workflows: Edit the relevant section in
workflows.md. - Changing parameters: Edit the parameters table in
operations.md. - Adding skills: Add a new skill section to
skills.mdand
optionally create aSKILL.mdfile in.github/skills/.
Step 6 — Verify
- Confirm the edit was applied correctly by reading the modified file.
- Summarize what was changed.
- Note any follow-up actions (e.g. "You may want to run
/docs-ingestoron the new package for a deeper API reference").
Re-Run Safety
- Preserve existing content — Only modify the specific sections
relevant to the update. Do not touch unrelated template content. - Ask before overwriting — If the target section already has
different domain content, ask the user whether to replace, merge,
or skip. - Append by default — When adding new items (packages, workflows,
skills), append to existing lists rather than replacing them.
What This Skill Does NOT Do
- Does not execute Python code or run analysis
- Does not install packages (suggest
pip installcommands instead) - Does not require
sciagent[wizard] - Does not replace the full
/configure-domainflow for first-time
setup — if most template content is missing, suggest running/configure-domainfirst