opsward.base#

All dataclasses and type definitions for opsward.

Classes

AgentInfo(name, path[, description])

An agent found in .claude/agents/.

ComponentScore(name, score[, max_score, notes])

Score for a single component (0–100) with optional notes.

DiagnosisReport(project_root, project_type)

Report card produced by scoring a ScanResult.

DocSpec(name, path[, size_bytes])

A document found in the docs directory.

GeneratedFile(target_path, content[, ...])

A file to be written by the generate step.

MaintenanceSuggestion(category, description)

A single maintenance action proposed by maintain.py.

ProjectType(*values)

Detected project type.

RuleInfo(name, path[, content])

A rule found in .claude/rules/.

ScanResult(project_root[, project_type, ...])

Everything we learned by reading (never writing) a target project.

SkillInfo(name, path[, has_skill_md, ...])

A skill found in .claude/skills/.

class opsward.base.AgentInfo(name, path, description='')[source]#

Bases: object

An agent found in .claude/agents/.

class opsward.base.ComponentScore(name, score, max_score=100, notes=list())[source]#

Bases: object

Score for a single component (0–100) with optional notes.

class opsward.base.DiagnosisReport(project_root, project_type, scores=list(), missing_items=list(), suggestions=list(), weighted_score=None, advisories=list(), portability=None)[source]#

Bases: object

Report card produced by scoring a ScanResult.

property grade: str#

A (90-100), B (80-89), C (70-79), D (60-69), F (<60).

Type:

Letter grade

property overall_score: float#

Weighted score if set (0.0 included), else simple average.

class opsward.base.DocSpec(name, path, size_bytes=0)[source]#

Bases: object

A document found in the docs directory.

class opsward.base.GeneratedFile(target_path, content, overwrite_policy='skip')[source]#

Bases: object

A file to be written by the generate step.

class opsward.base.MaintenanceSuggestion(category, description, diff='', triage='')[source]#

Bases: object

A single maintenance action proposed by maintain.py.

class opsward.base.ProjectType(*values)[source]#

Bases: Enum

Detected project type.

class opsward.base.RuleInfo(name, path, content='')[source]#

Bases: object

A rule found in .claude/rules/.

class opsward.base.ScanResult(project_root, project_type=ProjectType.unknown, claude_md_path=None, claude_md_content='', skills=list(), agents=list(), rules=list(), hooks_path=None, hooks_config=None, docs=list(), has_docs_guide=False, docs_guide_path=None, agents_md_path=None, agents_md_content='', host_files=dict(), is_monorepo=False, monorepo_packages=list(), decisions=list(), global_skills=list(), global_skills_dir=None)[source]#

Bases: object

Everything we learned by reading (never writing) a target project.

class opsward.base.SkillInfo(name, path, has_skill_md=False, description='', frontmatter=dict(), line_count=0, is_link=False, real_path=None, canonical_path=None)[source]#

Bases: object

A skill found in .claude/skills/.