Skip to main content

Diagnose, generate, and maintain the AI agent setup of your projects — CLAUDE.md, skills, subagents, rules, and supporting docs.

Project description

opsward

Diagnose, generate, and maintain the AI agent setup of your projects — CLAUDE.md, skills, subagents, rules, and supporting docs.

Install

pip install opsward

Quick Start

Diagnose

Score your project's AI setup health:

opsward diagnose-cmd .
Diagnosis Report: myproject
Project type: python
Overall score: 72/100  (Grade: C)

Components:
  CLAUDE.md quality         [################....] 81/100
  Documentation             [##############......] 70/100
  Skills                    [############........] 60/100
  Setup (rules/agents/hooks) [##########..........] 50/100
  Cross-references          [####################] 100/100

Missing:
  [ ] docs_guide.md
  [ ] docs/known_issues.md

Suggestions:
  1. Create a docs_guide.md to index your documentation
  2. Consider adding hooks in .claude/hooks.json

Generate

Create missing artifacts (dry run by default):

opsward generate-cmd .
opsward generate-cmd . --write   # actually create files

Generates CLAUDE.md, docs (architecture, conventions, known_issues, etc.), AI-enhanced skills (opsward, opsward-diagnose, opsward-generate, opsward-maintain), and agents (setup-auditor) — only what's missing, never overwrites existing files.

Install Skills

Install opsward's Claude Code skills into a project (or globally):

opsward install-skills-cmd                  # dry run for current project
opsward install-skills-cmd --write          # install into ./.claude/
opsward install-skills-cmd --global-install --write  # install into ~/.claude/

The installed skills let Claude Code run opsward's deterministic tools, interpret the results intelligently, and act on suggestions — no API keys needed, Claude Code is the AI engine.

Skill Trigger What it does
opsward "check my setup" Diagnose → decide next step → generate or maintain → re-diagnose
opsward-diagnose "audit my AI config" Run opsward diagnose, interpret scores, offer fixes
opsward-generate "scaffold AI setup" Run opsward generate, review, customize with real content
opsward-maintain "check for staleness" Run opsward maintain, prioritize issues, apply fixes

Maintain

Find stale references and drift:

opsward maintain-cmd .
myproject: 3 issue(s)

  [stale_path] CLAUDE.md references `src/old_module.py` but it does not exist
  [sync_issue] `new_doc.md` exists in docs/ but is not listed in docs_guide.md
  [empty_doc] `conventions.md` appears to be an empty stub (12 bytes)

What It Checks

CLAUDE.md quality (6 dimensions):

  • Commands & workflows — are build/test/lint commands documented?
  • Architecture clarity — is there a module map with role descriptions?
  • Conventions — are project-specific style rules present?
  • Conciseness — is the file scannable, not bloated?
  • Currency — do referenced paths actually exist?
  • Actionability — are instructions specific enough to act on?

Documentation completeness: docs_guide.md, architecture.md, conventions.md, known_issues.md, and content quality.

Skills & agents: SKILL.md presence, descriptions, setup-auditor agent.

Cross-references: paths in CLAUDE.md validated against the filesystem.

Overall health: weighted score (A–F grade) combining all components.

Output Formats

All commands support --format json for machine-parseable output:

opsward diagnose-cmd . --format json
opsward generate-cmd . --format json
opsward maintain-cmd . --format json

Python API

from pathlib import Path
from opsward import scan, diagnose, generate, generate_skills, maintain

sr = scan('.')
report = diagnose(sr)
print(report)              # human-readable report card
print(report.grade)        # 'A', 'B', 'C', 'D', or 'F'

files = generate(sr)       # list[GeneratedFile]
issues = maintain(sr)      # list[MaintenanceSuggestion]

# Install skills programmatically
skill_files = generate_skills(Path.home() / '.claude')

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

opsward-0.0.3.tar.gz (48.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

opsward-0.0.3-py3-none-any.whl (34.4 kB view details)

Uploaded Python 3

File details

Details for the file opsward-0.0.3.tar.gz.

File metadata

  • Download URL: opsward-0.0.3.tar.gz
  • Upload date:
  • Size: 48.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.19

File hashes

Hashes for opsward-0.0.3.tar.gz
Algorithm Hash digest
SHA256 399715cf3670520e010fce674a3be627915df80f9f260f5419f3ecac413e7a51
MD5 b8625c62348bc778ebe33e1c479f0c9d
BLAKE2b-256 d135cae8bd162a1d8c8a4579dd74ad27cfdf4375be8737369c690ea80101918a

See more details on using hashes here.

File details

Details for the file opsward-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: opsward-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 34.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.19

File hashes

Hashes for opsward-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 ab4d2ffa3b7366dba58b1b5b292ae696e1abc3b9f9c96ffdb0f736d92732c1a0
MD5 5ae334ba7692904b67bd4bc022540002
BLAKE2b-256 1232631072dada6a4193ca1caa01ff2893349026eeccf282940fdcad5649999c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page