Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions .agents/plugins/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,18 @@
"authentication": "ON_INSTALL"
},
"category": "Developer Tools"
},
{
"name": "trellis",
"source": {
"source": "local",
"path": "./plugins/trellis"
},
"policy": {
"installation": "AVAILABLE",
"authentication": "ON_INSTALL"
},
"category": "Developer Tools"
}
]
}
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ codex plugin marketplace add raintree-technology/plugins
codex plugin add docpull@raintree
codex plugin add hig-doctor@raintree
codex plugin add raintree-standards@raintree
codex plugin add trellis@raintree
```

Stable marketplace commands:
Expand Down
8 changes: 8 additions & 0 deletions plugins.lock.json
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,14 @@
"plugin"
],
"version": "1.1.1"
},
{
"name": "trellis",
"repository": "https://github.com/raintree-technology/trellis.git",
"ref": "v0.3.1",
"commit": "fef84a32dff8694c6e6aa726eb7aef42b70997ab",
"sourcePaths": ["plugin"],
"version": "0.3.1"
}
]
}
34 changes: 34 additions & 0 deletions plugins/trellis/.codex-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
{
"name": "trellis",
"version": "0.3.1",
"description": "Remediate Trellis findings through its stable todo schema and repository checks.",
"author": {
"name": "Raintree Technology",
"email": "support@raintree.technology",
"url": "https://raintree.technology"
},
"homepage": "https://github.com/raintree-technology/trellis",
"repository": "https://github.com/raintree-technology/trellis",
"license": "MIT",
"keywords": ["biome", "javascript", "typescript", "lint", "remediation"],
"skills": "./skills/",
"interface": {
"displayName": "Trellis",
"shortDescription": "Remediate shared JavaScript and TypeScript policy findings.",
"longDescription": "Trellis turns its existing deterministic todo report into a bounded remediation workflow. It preserves repository-specific suppressions and treats warnings as human-judgment work.",
"developerName": "Raintree Technology",
"category": "Developer Tools",
"capabilities": [
"Read Trellis todo reports",
"Remediate one rule group",
"Verify repository checks"
],
"websiteURL": "https://github.com/raintree-technology/trellis",
"brandColor": "#0F6B5D",
"defaultPrompt": [
"Remediate the next Trellis rule group in this repository.",
"Explain the blocking Trellis findings without editing.",
"Review Trellis warnings that need human judgment."
]
}
}
8 changes: 8 additions & 0 deletions plugins/trellis/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Trellis Codex plugin recipe

This recipe provides one remediation skill for Trellis 0.3.1. The skill consumes
the package's existing `trellis todo` JSON report. It does not duplicate the
policy or define another finding schema.

The consuming repository owns installation, dependency changes, Biome commands,
tests, architecture rules, and justified local suppressions.
9 changes: 9 additions & 0 deletions plugins/trellis/fixtures/activation.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"schemaVersion": 1,
"skill": "trellis-remediate",
"positive": [
"Remediate the next Trellis rule group in this repository.",
"Triage these trellis todo errors and fix one group."
],
"negative": ["Run ESLint and fix everything.", "Install a formatter in this new project."]
}
45 changes: 45 additions & 0 deletions plugins/trellis/skills/trellis-remediate/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
---
name: trellis-remediate
description: Use when the user asks to fix, remediate, triage, or work through Trellis findings in a JavaScript or TypeScript repository. Detect whether the repository already uses Trellis before acting. Do not activate for a generic lint request that does not mention Trellis or for installing Trellis without explicit user authorization.
---

# Trellis remediation

Use Trellis's existing todo report as the handoff contract. Do not reproduce its
policy in this skill and do not change its JSON schema.

## Establish the repository state

1. Inspect package manifests, the lockfile, Biome configuration, scripts, and
repository guidance for `@raintree-technology/trellis` adoption.
2. If Trellis or its exact Biome peer dependency is missing, stop before
installation or any dependency change. Ask for explicit authorization and
state the proposed versions and files.
3. Run the repository's existing command that invokes `trellis todo`. If no
script exists but the installed package is resolvable, run the installed
executable without modifying dependencies.
4. Confirm the report has `schemaVersion: 1`. Stop on an unknown schema.

## Remediate one rule group

1. Group open todos by `rule`. Select one group only.
2. Treat `error` and `fatal` findings as blocking candidates. Confirm whether
the repository's Biome gate makes them release-blocking.
3. Treat warnings as human-judgment work. Inspect behavior and architecture
before changing code.
4. Apply the smallest behavior-preserving correction that follows each todo's
replacement direction.
5. Preserve a narrow local suppression when its reason is still justified. Do
not remove or broaden suppressions to make the report cleaner.
6. Stop after the selected rule group. Report remaining groups for a later pass.

## Verify

After edits, rerun:

1. The repository's Trellis todo command.
2. The repository's Biome check.
3. Tests relevant to the changed behavior.

Report resolved IDs, remaining findings, preserved suppressions, exact checks,
and failures. A clean todo report does not replace the Biome gate or tests.