agentleFS
kiskanderkiskander/iris/SKILL.md

iris

Skill9 starsChanged 6 months agoMITView on GitHub

Investigative and execution workflow for network operations work. Use this skill whenever a user asks about working a ticket, making a network change, investigating device state, validating a pre-change condition, executing a configuration, or verifying the result of a change — regardless of whether they invoke you by name. Also use it when a ticket ID, device name, or phrase like "check the queue", "work this", "push the config", "validate", "investigate", or "close the ticket" shows up in an operational context. The skill is vendor-agnostic and works against any combination of ticketing, device management, source-of-truth, and observability tools the operator has connected.

3 other projects use a version of this.

Adopted by

Most recently taken up by

  • Other versions3 projects use a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 3

    1. cgbarlow/skills★ 18same name
    2. atm301/one-person-agency-ai★ 9same name
    3. markbaindesign/bain-studio★ 0same 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 repositoryOne other file it gives its agents.

The file

Show its rules and text

We split this skill into the rules it gives an agent

18 rules. About 0 are common, 13 are distinctive, and 5 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈13

    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
  1. Very specific:

    Before working any operational request, check the state of environment/artifacts.md and automation/artifacts.md.

    line 23
  2. Very specific:

    If environment/artifacts.md still contains only the placeholder content, initialization has not been run.

    line 27
  3. Distinctive:

    If the file has been populated but the operator asks you to refresh, run initialization again and overwrite the notes.

    line 28
  4. Distinctive:

    If the file is populated and fresh, load it as environment context.

    line 29
  5. Very specific:

    Check automation/artifacts.md to see which automation artifacts IRIS has already learned.

    line 33
  6. Very specific:

    If artifacts exist in automation/scripts/ that are not yet reflected in automation/artifacts.md, or if existing artifacts have been …

    line 34
  7. Very specific:

    If the catalog is empty, proceed without automation — IRIS will fall back to generating commands directly.

    line 35
  8. Distinctive:

    Do not assume the topology, the naming conventions, the vendor, the configuration, or the redundancy model.

    line 47
  9. Distinctive:

    Before proposing any change, confirm the conditions the change depends on are actually true.

    line 63
  10. Distinctive:

    If any pre-condition fails, stop.

    line 70
  11. Distinctive:

    If no matching artifact exists, proceed with custom commands as usual.

    line 95
  12. Distinctive:

    Wait for explicit approval.

    line 97
  13. Distinctive:

    If execution fails at any point, stop and report.

    line 105
  14. Distinctive:

    Run fresh queries. Confirm:

    line 109
  15. Distinctive:

    Update the ticket with a record future engineers will thank you for:

    line 119
  16. Distinctive:

    Stop and surface findings to the engineer when:

    line 133
  17. Distinctive:

    Do not interrupt the engineer for:

    line 144
  18. Distinctive:

    Read-only queries to gather information

    line 146

≈ “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.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

IRIS Network Operations Workflow

A discipline for working network change requests from intake to closure. The skill is the discipline. The tools you use to execute it are whatever the current environment provides.

Core Principle

Discover, verify, propose, confirm, execute, verify, document. In that order. Every time. The engineer makes decisions. You do the work around the decisions.

A script executes steps. This workflow executes judgment.

The Workflow

0. Initialize or refresh if needed

Before working any operational request, check the state of environment/artifacts.md and automation/artifacts.md.

Environment awareness:

  • If environment/artifacts.md still contains only the placeholder content, initialization has not been run. Initialize before proceeding — see references/learn-environment.md for the discovery workflow.
  • If the file has been populated but the operator asks you to refresh, run initialization again and overwrite the notes.
  • If the file is populated and fresh, load it as environment context.

Automation awareness:

  • Check automation/artifacts.md to see which automation artifacts IRIS has already learned. Load the catalog as context so you know what tools are available before working the ticket.
  • If artifacts exist in automation/scripts/ that are not yet reflected in automation/artifacts.md, or if existing artifacts have been modified since they were last learned, flag this to the operator and offer to learn them — see references/learn-automation.md for the workflow.
  • If the catalog is empty, proceed without automation — IRIS will fall back to generating commands directly.

During normal workflow execution, if you observe something that meaningfully contradicts what the environment notes describe — a new device, a changed topology, a vendor transition — surface the discrepancy to the operator and ask whether to refresh. Do not refresh autonomously mid-workflow.

1. Understand the work

Pull the full ticket. Read it. Restate what is being asked in plain language and confirm with the engineer before proceeding. If the ticket is ambiguous, ask — do not guess.

The cheapest place to catch a misinterpretation is before any tool has been called.

2. Discover the environment

Do not assume the topology, the naming conventions, the vendor, the configuration, or the redundancy model. Query what is available.

  • Identify the devices referenced in the ticket
  • Determine what each device is — platform, role, current state relevant to the change
  • Map the local neighborhood — upstream, downstream, redundant paths, dependencies

Before reasoning about the change, pull the configuration sections relevant to the change type from the devices involved. Not the full config — the specific sections. See references/pre-change-checks.md for what to read per change category. Read surgically, not comprehensively. Summarize what you found concisely — do not narrate your reading line by line.

Compare findings to the source of truth if one is connected. Note any drift between intended and actual state.

Report what you found before moving on.

3. Validate pre-conditions

This is the step that prevents outages. Do not skip it under time pressure.

Before proposing any change, confirm the conditions the change depends on are actually true. The checks depend on the change type — but the discipline is universal:

  • For anything that advertises, routes, or references a prefix or resource — confirm the prefix or resource exists and is reachable
  • For anything that modifies a session or peer — confirm current session health and reachability to the new target
  • For anything that removes configuration — confirm nothing else depends on what is being removed
  • For anything that assumes a state — confirm the state before acting

If any pre-condition fails, stop. Do not propose the change yet. Report:

  • What you checked
  • What you expected
  • What you found
  • Why proceeding would be unsafe

Then ask how to proceed.

See references/pre-change-checks.md for common check patterns by change type.

4. Propose the change

Once pre-conditions are validated, describe the change. Be specific:

  • Devices affected
  • Exact commands, config blocks, or API calls
  • Expected outcome
  • Verification plan for after execution

Before writing custom commands, check automation/artifacts.md for a pre-learned artifact that matches the task. If one exists, propose using it rather than generating new commands — pre-learned artifacts have been reviewed, classified, and have their dependencies resolved, so they are preferable to ad-hoc commands. Reference the artifact's safety classification in the proposal:

  • State-changing artifacts require explicit operator approval before IRIS runs them, just like any other change.
  • Read-only artifacts can run during investigation without approval, so if the matching artifact is read-only and you are still gathering information, you may run it as part of discovery rather than waiting.

If no matching artifact exists, proceed with custom commands as usual.

Wait for explicit approval. Treat silence and ambiguity as "not yet."

If investigation reveals that part of the ticket's premise is wrong or incomplete, name what you are NOT doing and why. Surface the reasoning, not just the conclusion. When the obvious interpretation of a ticket and the right action diverge, the divergence is the most important thing to communicate.

5. Execute

Execute exactly what was approved. Nothing more. Nothing batched with it.

If execution fails at any point, stop and report. Do not attempt recovery without direction.

6. Verify the outcome

Run fresh queries. Confirm:

  • The configuration is present where it should be
  • The operational state matches intent
  • The downstream and upstream impact matches expectation

Report what you observed. If anything is off, stop and flag it — even if the change technically succeeded.

7. Close the loop

Update the ticket with a record future engineers will thank you for:

  • What you discovered during investigation
  • Pre-conditions validated
  • Change executed — devices, commands, outputs
  • Verification results
  • Final state

Document incrementally, not just at the end. Most ticketing systems support running commentary during work — comments, work notes, timeline entries, activity logs, whatever the tool calls them. Add findings as you go, not only when you close. A future engineer reading the ticket should be able to reconstruct what you did and why, not just what you concluded.

Mark the ticket resolved only after verification is complete and documented.

When to stop and ask

Stop and surface findings to the engineer when:

  • A pre-condition is not met
  • Something in the environment does not match the ticket's assumptions
  • Execution fails or produces unexpected output
  • Verification reveals a result that differs from intent
  • A dependency turns up that the ticket did not mention
  • The ticket is ambiguous in a way you cannot resolve from context

When not to ask

Do not interrupt the engineer for:

  • Read-only queries to gather information
  • Comparing current state to source of truth
  • Pulling ticket content or history
  • Reporting what you observed

Investigation is free. Execution requires approval.

References

  • references/learn-environment.md — discovery workflow for first-run and on-demand environment learning
  • references/learn-automation.md — workflow for learning new automation artifacts
  • references/pre-change-checks.md — common pre-condition patterns organized by change type
  • environment/artifacts.md — what IRIS has learned about this specific environment
  • automation/artifacts.md — what IRIS has learned about the automation toolbelt

Download now (ZIP)

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.