agentsclimarketplace

Setup domain ops

Skill cat2000/domain-knowledge-ops/.cursor/skills/setup-domain-ops

Agent skills for Cursor: Confluence/Jira → domain briefs → story risk & INVEST splits and test case Design. Offline DEMO-1 — no Atlassian needed to try.

Install
npx -y skills add cat2000/domain-knowledge-ops --skill setup-domain-ops

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 24 days oldThe repository was created 24 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
  • 0 stars0 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.

What its author says it does

Copied from the file, not written here

One-time setup: credentials, company/business intro → industry module template (confirm), Confluence space URL(s), Jira board id(s). Writes team-roots.json as v3 (libraries + teams mounting them). See docs/TEAM_ROOTS_V3.md.

SKILL.md

6.2 KB, as published. Nobody here has run it

setup-domain-ops

Configure this repo for your tenant with a short dialogue.
Model (docs/TEAM_ROOTS_V3.md): one Confluence space = one library; each Jira team mounts libraries[].

Path C default (single library): one space + one board → one libraries.* entry + one teams.* with libraries: [<that key>].
Write version: 3 JSON. Do not write the old v2 shape (root/overview on the team). Template: team-roots.example.json. Multi-mount illustration only: team-roots.v3.example.json.

When to run

  • First clone of this pack
  • Adding a Confluence space (library) or Jira board (team)
  • Changing deliverable locale (zh-CN / en)
  • Refreshing module cuts after strategy changes

Agent checklist

A. Credentials

  1. Ensure root .env exists (cp .env.example .env) and collect:
    • ATLASSIAN_EMAIL / ATLASSIAN_API_TOKEN
    • ATLASSIAN_BASE_URL and CONFLUENCE_BASE_URL (no placeholders in production)
  2. Set defaults.deliverable_locale (zh-CN or en) when editing team-roots.json.
  3. If team-roots.json still has your-site.atlassian.net, offer to copy from team-roots.example.json, then replace placeholders.

B. Company intro → industry template (required)

  1. Ask only:
    • Company / product name
    • Short business intro (industry, who rules apply to, one-line in-domain vs out-of-domain)
  2. As an industry expert, draft a best-practice domain cut (not product rule text):
    • 3–8 candidate modules (business name + one-line axis)
    • Light strategy.md §2 fill from that draft (subjects, strengthen/weaken, a few adjudication questions)
  3. Use strategy.example.md only as format. Do not copy Acme / demo slugs into production profiles.
  4. Pause for human confirm on the module table (edit/rename/drop rows). Do not invent a fake industry if the intro is empty — ask again.

Template vs truth: the draft is a cut template (industry adjudication axes / 大类). It does not mean domain knowledge is already covered. Completeness comes later from Confluence + Jira via bidirectional tagging (S2 closure), landing sources into those axes, and tagging_acceptance.py — say this explicitly when the human confirms the table. Do not promote filing layout into modules, and do not hard-code tenant remount tables.

C. Derive machine profiles (after confirm)

  1. From confirmed modules + §2 draft, write:
    • domain-knowledge/s2-domain-profiles.json — themes, facets, cues
    • domain-knowledge/s2-propose-industry-seeds.jsonmodule_seeds (team keys as known)
    • domain-knowledge/jira/teams/<team>.json — classify facets aligned to slugs (when team exists)
  2. Do not continue to wiki with empty checklist_themes.

D. Confluence spaces → libraries.* (v3)

  1. For each space, collect overview URL (or homepage id). One space → one library key (stable slug, e.g. product or space_key lowercased).
  2. Write under libraries.<library_key>:
    • display_name, root_id / library_id (homepage id), confluence_overview, optional space_key, s2_profile
    • deliver_by_proposition from confirmed modules, using the active defaults.deliverable_locale S7 filename:
      • en"<slug>": ["<slug>", "<slug>-domain-brief.md"]
      • zh-CN"<slug>": ["<slug>", "<slug>-领域知识定稿.md"]
      • (suffix from domain-knowledge/language/deliverable-locale-tokens.jsonfilenames.locale_brief_suffix) Do not hard-code English *-domain-brief.md when locale is zh-CN.
  3. Set defaults.default_library to the primary (usually the only) library key.
  4. Remind next step per space:
    @generate-knowledge-from-wiki <overview-URL>
    

E. Jira boards → teams.* mounts (v3)

  1. For each delivery team, collect board_id (+ optional display name / agile team / jql_base).
  2. Write under teams.<team_key>:
    • libraries: ["<library_key>", …] — Path C single-lib: one entry (the library from D)
    • jira.board_id and related fields; attribution_config when present
    • Do not put root_id / confluence_overview / deliver_by_proposition on the team (those live on the library)
  3. Set defaults.default_team when there is a primary team. Remind Path C order:
    @generate-knowledge-from-wiki <overview-URL>
    # then tagging acceptance; if board_id set:
    @add-knowledge-from-jira team=<team_key>
    
    Jira is the default second half of bidirectional tagging when a board exists — not an optional appendix.

F. File shape checklist (before finish)

  1. team-roots.json must have "version": 3, non-empty libraries, and every team with non-empty libraries[].
  2. Single-library Path C is done when: one library + one team mounting it + profiles non-empty + handoff commands shown.
  3. Remind: do not commit production curated/ / extracted/ / materialized/ or .env to a public fork.

Hard stops

  • Empty company/intro and empty module table → stop; do not invent an industry.
  • Empty checklist_themes → do not pretend Recognize/wiki modules exist.
  • Never reintroduce shipped offline-demo fixture slugs unless the user’s confirmed strategy contains them.
  • Do not scrape the public web into brief rule bodies; optional public hints for module naming only, always confirmed.
  • Do not write v2-only team records (overview + board on the same object without libraries{}).

Out of scope

  • Running full S1–S7 (hand off to @generate-knowledge-from-wiki)
  • Parsing strategy.md with scripts (agent derives JSON; scripts read JSON only)
  • Multi-space merge into one _deliver/ (deferred; see TEAM_ROOTS_V3)
  • Full multi-mount classify/risk (config may list several libraries; runtime still uses primary mount until a later slice)

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.