agentleFS
sampleXbrosampleXbro/agentsmesh/.agents/skills/add-global-mode-target/SKILL.md

add-global-mode-target

Skill27 starsChanged 2 months agoMITView on GitHub

Use when adding global mode support for one existing agentsmesh target from a target-structure/global-path doc. Covers contract extraction from docs, descriptor.global layout wiring, generator/import/reference-rewrite touchpoints, strict tests, docs updates, and final verification for one target at a time.

The file

Show its rules and text

We split this skill into the rules it gives an agent

40 rules. About 0 are common, 28 are distinctive, and 12 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈28

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 12

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use this skill when the task is to add global mode support for one existing target after you have a target-specific document that describes …

    line 10
  2. Very specific:

    Read ./references/global-mode-target-checklist.md before editing code.

    line 12
  3. Very specific:

    Use add-agent-target for new targets.

    line 27
  4. Distinctive:

    Start from the target doc and verify it against the live target implementation.

    line 33
  5. Distinctive:

    Treat current code as the source of truth for project-mode behavior.

    line 34
  6. Distinctive:

    Write failing tests first for every new global-mode behavior.

    line 35
  7. Distinctive:

    Keep the change target-scoped.

    line 36
  8. Very specific:

    Add or update descriptor.global and keep project/global layout semantics explicit.

    line 37
  9. Distinctive:

    Verify link rewriting and import normalization for the target's global paths, not just generation paths.

    line 38
  10. Distinctive:

    Test unsupported global features explicitly.

    line 39
  11. Distinctive:

    Update docs if the supported-tools matrix, README, or global-mode docs change.

    line 40
  12. Distinctive:

    Run the full verification stack before claiming completion.

    line 41
  13. Distinctive:

    Do not infer global paths from project-mode paths.

    line 45
  14. Distinctive:

    Do not hardcode the target's global paths in shared cleanup or reference code when descriptor metadata can own them.

    line 46
  15. Distinctive:

    Do not stop at “files generate”.

    line 47
  16. Distinctive:

    Do not silently mark a target as globally supported if only a subset of features work natively.

    line 48
  17. Very specific:

    Read src/targets/<target>/index.ts, constants.ts, generator.ts, importer.ts, and linter.ts.

    line 59
  18. Distinctive:

    Write failing tests first.

    line 63
  19. Very specific:

    Add unit tests for target layout metadata (descriptor.global, supported/unsupported features).

    line 64
  20. Distinctive:

    Add generation tests for global paths and root artifacts.

    line 65
  21. Distinctive:

    Add import/reference-rewrite tests if the target can import from global files.

    line 66
  22. Distinctive:

    Add stale-cleanup coverage if managed outputs differ from project mode.

    line 67
  23. Very specific:

    Add command/integration coverage that proves the existing --global CLI surface works for the new target where applicable.

    line 68
  24. Distinctive:

    Prefer target metadata over shared branching.

    line 71
  25. Distinctive:

    Keep managed outputs, root instruction paths, and path resolvers explicit.

    line 73
  26. Distinctive:

    If only some features are global, encode that precisely and keep unsupported ones absent or skipped.

    line 74
  27. Distinctive:

    Update shared scope-aware path or import code only if the target truly needs it.

    line 77
  28. Distinctive:

    Keep shared changes generic and descriptor-driven.

    line 78
  29. Distinctive:

    If the target doc reveals a shared architectural gap, fix the gap once rather than adding one-off target branches.

    line 79
  30. Distinctive:

    Do not re-architect CLI scope handling unless the target proves a real shared gap.

    line 80
  31. Distinctive:

    Update docs and matrix surfaces.

    line 82
  32. Very specific:

    Update README.md and website/src/content/docs/reference/supported-tools.mdx if support levels or notes change.

    line 83
  33. Very specific:

    Update docs/plan-global-mode.md if the target behavior clarifies the implementation contract.

    line 84
  34. Distinctive:

    Run targeted tests during iteration.

    line 87
  35. Distinctive:

    Run the full verification stack at the end.

    line 88
  36. Very specific:

    If the target imports or rewrites links in global scope: src/core/reference/rewriter.ts src/core/reference/output-source-map.ts …

    line 99
  37. Very specific:

    If managed output ownership changes: src/core/generate/stale-cleanup.ts

    line 104
  38. Very specific:

    If the target needs command-surface proof: tests/unit/cli/commands/*.test.ts tests/integration/*global*.test.ts

    line 106
  39. Distinctive:

    Read the checklist reference for the full test and review matrix.

    line 110
  40. Very specific:

    Add narrower unit/integration/e2e commands while iterating, but do not skip the full stack.

    line 119

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

Purpose

Add Global Mode Target

Use this skill when the task is to add global mode support for one existing target after you have a target-specific document that describes the native global file paths and behavior.

Read ./references/global-mode-target-checklist.md before editing code. Treat it as the minimum implementation and QA checklist.

When To Use

  • The target already exists in src/targets/<target>/
  • You have a target doc with native global paths or global behavior
  • The repository-wide global-mode foundation already exists (init|install|generate|import|diff|lint|watch|check|merge|matrix --global)
  • The work is scoped to one target at a time

Do Not Use This Skill For

  • Adding a brand-new target from scratch
  • Defining the shared global-mode architecture for the first time
  • Guessing a target's global behavior without a concrete doc or official source

Use add-agent-target for new targets. Use this skill only for the per-target global-mode pass.

Non-Negotiable Rules

MUST

  • Start from the target doc and verify it against the live target implementation.
  • Treat current code as the source of truth for project-mode behavior; preserve it unless the target doc requires a change.
  • Write failing tests first for every new global-mode behavior.
  • Keep the change target-scoped. Do not scatter new target-specific branches through shared code if descriptor metadata can carry the behavior.
  • Add or update descriptor.global and keep project/global layout semantics explicit.
  • Verify link rewriting and import normalization for the target's global paths, not just generation paths.
  • Test unsupported global features explicitly. If the target has no meaningful native global support, encode that and test the skip/warning behavior.
  • Update docs if the supported-tools matrix, README, or global-mode docs change.
  • Run the full verification stack before claiming completion.

MUST NOT

  • Do not infer global paths from project-mode paths.
  • Do not hardcode the target's global paths in shared cleanup or reference code when descriptor metadata can own them.
  • Do not stop at “files generate”; global import, reference rewriting, and stale cleanup must also be checked when applicable.
  • Do not silently mark a target as globally supported if only a subset of features work natively.

Workflow

  1. Extract the contract from the doc.
    • Record the target's native global root.
    • Record which features are globally supported: rules, commands, agents, skills, MCP, hooks, ignore, permissions.
    • Record root-instruction behavior, fallback paths, legacy paths, and any GUI-only/unsupported areas.
    • Record whether import from global files is meaningful and lossless.
  2. Cross-check the live target implementation.
    • Read src/targets/<target>/index.ts, constants.ts, generator.ts, importer.ts, and linter.ts.
    • Identify the current project layout in descriptor.project.
    • Identify where global behavior can reuse the same structure and where it cannot.
  3. Write failing tests first.
    • Add unit tests for target layout metadata (descriptor.global, supported/unsupported features).
    • Add generation tests for global paths and root artifacts.
    • Add import/reference-rewrite tests if the target can import from global files.
    • Add stale-cleanup coverage if managed outputs differ from project mode.
    • Add command/integration coverage that proves the existing --global CLI surface works for the new target where applicable.
  4. Implement the target-global layout.
    • Prefer target metadata over shared branching.
    • Fill descriptor.global for supported targets.
    • Keep managed outputs, root instruction paths, and path resolvers explicit.
    • If only some features are global, encode that precisely and keep unsupported ones absent or skipped.
  5. Wire shared behavior only where necessary.
    • Update shared scope-aware path or import code only if the target truly needs it.
    • Keep shared changes generic and descriptor-driven.
    • If the target doc reveals a shared architectural gap, fix the gap once rather than adding one-off target branches.
    • Do not re-architect CLI scope handling unless the target proves a real shared gap.
  6. Update docs and matrix surfaces.
    • Update README.md and website/src/content/docs/reference/supported-tools.mdx if support levels or notes change.
    • Update docs/plan-global-mode.md if the target behavior clarifies the implementation contract.
  7. Verify and QA.
    • Run targeted tests during iteration.
    • Run the full verification stack at the end.
    • Apply the local post-feature-qa skill before marking the work done.

Required Touchpoints

  • Target descriptor and layout metadata: src/targets/<target>/index.ts
  • Shared target lookup/path helpers: src/targets/catalog/builtin-targets.ts src/core/reference/map-targets.ts src/core/reference/map.ts
  • If the target imports or rewrites links in global scope: src/core/reference/rewriter.ts src/core/reference/output-source-map.ts src/core/reference/import-rewriter.ts src/core/reference/import-map-builders.ts
  • If managed output ownership changes: src/core/generate/stale-cleanup.ts
  • If the target needs command-surface proof: tests/unit/cli/commands/*.test.ts tests/integration/*global*.test.ts

Read the checklist reference for the full test and review matrix.

Required Verification

  • pnpm lint
  • pnpm typecheck
  • pnpm build
  • pnpm test

Add narrower unit/integration/e2e commands while iterating, but do not skip the full stack.

Completion Standard

The task is not done until all of the following are true:

  • The target's global contract is derived from the provided doc and encoded in code, not left implicit.
  • descriptor.global is either implemented correctly or omitted intentionally for unsupported targets.
  • Global generation paths are tested.
  • Global import and reference rewriting are tested when the target supports them.
  • Managed outputs and stale cleanup are correct for the target's global footprint.
  • Docs and support matrix entries are current.
  • Full verification passes.

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.