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
148 changes: 91 additions & 57 deletions .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,9 @@
"description": "Create and maintain human-readable changelogs for software projects using Keep a Changelog standards",
"source": "./static/marketplace",
"strict": false,
"skills": ["./skills/slim-changelog"],
"skills": [
"./skills/slim-changelog"
],
"keywords": [
"changelog",
"documentation",
Expand All @@ -28,7 +30,9 @@
"description": "Create and implement code of conduct and collaboration policies using Contributor Covenant standards, with specialized templates for scientific research environments and academic citation",
"source": "./static/marketplace",
"strict": false,
"skills": ["./skills/slim-code-of-conduct"],
"skills": [
"./skills/slim-code-of-conduct"
],
"keywords": [
"code-of-conduct",
"governance",
Expand All @@ -43,7 +47,9 @@
"description": "Implement Grype-based container and dependency vulnerability scanning with automated pre-commit hooks",
"source": "./static/marketplace",
"strict": false,
"skills": ["./skills/slim-container-vulnerability-scanning"],
"skills": [
"./skills/slim-container-vulnerability-scanning"
],
"keywords": [
"vulnerability-scanning",
"container",
Expand All @@ -58,7 +64,9 @@
"description": "Implement comprehensive testing strategies with documentation and automation templates for static analysis, security scanning, and code quality checks",
"source": "./static/marketplace",
"strict": false,
"skills": ["./skills/slim-continuous-testing"],
"skills": [
"./skills/slim-continuous-testing"
],
"keywords": [
"testing",
"continuous-testing",
Expand All @@ -73,7 +81,9 @@
"description": "Create comprehensive contributing guides for open source projects with workflow guidance and customizable templates",
"source": "./static/marketplace",
"strict": false,
"skills": ["./skills/slim-contributing-guide"],
"skills": [
"./skills/slim-contributing-guide"
],
"keywords": [
"contributing",
"open-source",
Expand All @@ -88,7 +98,9 @@
"description": "Generate comprehensive executive summaries from workspace communication files using AI analysis with automatic context discovery",
"source": "./static/marketplace",
"strict": false,
"skills": ["./skills/slim-executive-summary"],
"skills": [
"./skills/slim-executive-summary"
],
"keywords": [
"executive-summary",
"ai-powered",
Expand All @@ -103,7 +115,9 @@
"description": "Team governance templates for government-sponsored open source projects (small, medium, large teams)",
"source": "./static/marketplace",
"strict": false,
"skills": ["./skills/slim-governance"],
"skills": [
"./skills/slim-governance"
],
"keywords": [
"governance",
"templates",
Expand All @@ -118,7 +132,9 @@
"description": "Add standardized GitHub issue templates for bug reports and feature requests in both Markdown and Form formats",
"source": "./static/marketplace",
"strict": false,
"skills": ["./skills/slim-issue-templates"],
"skills": [
"./skills/slim-issue-templates"
],
"keywords": [
"issue-templates",
"github",
Expand All @@ -133,7 +149,9 @@
"description": "Detect project type and add appropriate NASA/Open Source licenses (Apache 2.0 or MIT)",
"source": "./static/marketplace",
"strict": false,
"skills": ["./skills/slim-license"],
"skills": [
"./skills/slim-license"
],
"keywords": [
"license",
"open-source",
Expand All @@ -149,7 +167,9 @@
"description": "Generate comprehensive meeting agendas by orchestrating context gathering from previous summaries, querying external services (GitHub, Slack, etc. via TECH.md), and matching custom format templates. Automatically identifies and suggests generation of missing meeting summaries.",
"source": "./static/marketplace",
"strict": false,
"skills": ["./skills/slim-meeting-agenda"],
"skills": [
"./skills/slim-meeting-agenda"
],
"keywords": [
"meeting-agenda",
"collaboration",
Expand All @@ -165,7 +185,9 @@
"description": "Generate comprehensive meeting summaries with action items from meeting notes, transcripts, or agendas. Automatically fulfills actionable tasks using tools discovered from TECH.md (MCP servers, APIs, local scripts) and provides guidance for manual tasks.",
"source": "./static/marketplace",
"strict": false,
"skills": ["./skills/slim-meeting-summary"],
"skills": [
"./skills/slim-meeting-summary"
],
"keywords": [
"meeting-summary",
"collaboration",
Expand All @@ -180,7 +202,9 @@
"description": "Set up a project-aware workspace with date-organized dynamic folders for project-aware skill execution, a dedicated assets directory for code repositories, tool integration tracking (MCP servers, APIs, scripts), and daily work organization. This is an essential skill for building advanced AI-driven workflows customized for your project. A number of other skills depend on this as a prerequisite.",
"source": "./static/marketplace",
"strict": false,
"skills": ["./skills/slim-project-aware-workspace"],
"skills": [
"./skills/slim-project-aware-workspace"
],
"keywords": [
"workspace",
"project-aware",
Expand All @@ -196,7 +220,9 @@
"description": "Create a comprehensive README.md template to help developers and users understand your project",
"source": "./static/marketplace",
"strict": false,
"skills": ["./skills/slim-readme"],
"skills": [
"./skills/slim-readme"
],
"keywords": [
"readme",
"documentation",
Expand All @@ -210,7 +236,9 @@
"description": "Meta-skill for creating and integrating new best practices (skills, agents, MCP servers) into the SLIM marketplace with dependency tracking and automated registry updates",
"source": "./static/marketplace",
"strict": false,
"skills": ["./skills/slim-skill-creator"],
"skills": [
"./skills/slim-skill-creator"
],
"keywords": [
"skill-creator",
"marketplace",
Expand All @@ -221,43 +249,14 @@
"mcp-servers"
]
},
{
"name": "github-mcp-server",
"source": {
"source": "github",
"repo": "https://github.com/github/github-mcp-server"
},
"description": "MCP server providing GitHub repository access and management capabilities including issues, PRs, and repository operations",
"version": "1.0.0",
"author": {
"name": "GitHub",
"url": "https://github.com/github/github-mcp-server"
},
"category": "integrations",
"homepage": "https://github.com/github/github-mcp-server",
"keywords": [
"github",
"git",
"integration",
"external",
"third-party",
"mcp-server",
"repository"
]
},
{
"name": "slim-rebranding",
"version": "1.0.2",
"description": "Rebranding agent for branding the slim framework for a new project customized for a specific domain. main. Use this skill whenever you'd like to leverage the Slim Marketplace framework for a customized project, but you don't want to keep the slim branding.",
"source": "./static/marketplace",
"author": {
"name": "NASA AMMOS",
"email": "slim@jpl.nasa.gov",
"url": "https://github.com/NASA-AMMOS"
},
"homepage": "https://github.com/NASA-AMMOS/slim/tree/main/static/marketplace/skills/slim-rebranding",
"repository": "https://github.com/NASA-AMMOS/slim",
"license": "Apache-2.0",
"strict": false,
"skills": [
"./skills/slim-rebranding"
],
"keywords": [
"rebranding",
"branding",
Expand All @@ -268,21 +267,24 @@
"code-quality",
"workflow"
],
"skills": ["./skills/slim-rebranding"]
},
{
"name": "slim-website-maker",
"version": "1.0.0",
"description": "Autonomous website generator skill for creating customized Docusaurus documentation websites. Analyzes project content, generates intelligent website structure, and validates changes with iterative build testing until successful. Creates git branch and commits with clear messages. Auto-detects project type and customizes accordingly. Use when generating project documentation websites, creating content-driven sites, or automating website creation with build validation.",
"source": "./static/marketplace",
"version": "1.0.2",
"author": {
"name": "NASA AMMOS",
"email": "slim@jpl.nasa.gov",
"url": "https://github.com/NASA-AMMOS"
},
"homepage": "https://github.com/NASA-AMMOS/slim/tree/main/static/marketplace/agents/slim-website-maker",
"homepage": "https://github.com/NASA-AMMOS/slim/tree/main/static/marketplace/skills/slim-rebranding",
"repository": "https://github.com/NASA-AMMOS/slim",
"license": "Apache-2.0",
"license": "Apache-2.0"
},
{
"name": "slim-website-maker",
"description": "Autonomous website generator skill for creating customized Docusaurus documentation websites. Analyzes project content, generates intelligent website structure, and validates changes with iterative build testing until successful. Creates git branch and commits with clear messages. Auto-detects project type and customizes accordingly. Use when generating project documentation websites, creating content-driven sites, or automating website creation with build validation.",
"source": "./static/marketplace",
"strict": false,
"skills": [
"./skills/slim-website-maker"
],
"keywords": [
"website-maker",
"docusaurus",
Expand All @@ -294,7 +296,39 @@
"workflow",
"deployment"
],
"skills": ["./skills/slim-website-maker"]
"version": "1.0.0",
"author": {
"name": "NASA AMMOS",
"email": "slim@jpl.nasa.gov",
"url": "https://github.com/NASA-AMMOS"
},
"homepage": "https://github.com/NASA-AMMOS/slim/tree/main/static/marketplace/agents/slim-website-maker",
"repository": "https://github.com/NASA-AMMOS/slim",
"license": "Apache-2.0"
},
{
"name": "github-mcp-server",
"description": "MCP server providing GitHub repository access and management capabilities including issues, PRs, and repository operations",
"source": {
"source": "github",
"repo": "https://github.com/github/github-mcp-server"
},
"external_only": true,
"keywords": [
"github",
"git",
"integration",
"external",
"third-party",
"mcp-server",
"repository"
],
"version": "1.0.0",
"author": {
"name": "GitHub",
"url": "https://github.com/github/github-mcp-server"
},
"homepage": "https://github.com/github/github-mcp-server"
}
]
}
2 changes: 2 additions & 0 deletions .github/workflows/docusaurus.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ jobs:
deploy:
name: Deploy to GitHub Pages
runs-on: ubuntu-latest
permissions:
contents: write # required for peaceiris/actions-gh-pages to publish to gh-pages
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
Expand Down
29 changes: 29 additions & 0 deletions .github/workflows/registry-check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: Registry sync check

# registry.json is the hand-authored source of truth; marketplace.json is
# generated from it. This check fails if the committed marketplace.json is
# stale — contributors must run `npm run prebuild` and commit the result.

on:
pull_request:
push:
branches:
- main

jobs:
check:
name: Verify marketplace.json is in sync with registry.json
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20

- name: Regenerate marketplace.json from registry.json
run: node src/conf/generate-marketplace.js

- name: Fail if marketplace.json / registry.json are out of sync
run: |
git diff --exit-code .claude-plugin/marketplace.json static/data/registry.json \
|| (echo "::error::marketplace.json / registry.json out of sync — run 'npm run prebuild' and commit the result." && exit 1)

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {contents: read}
Comment on lines +15 to +29
12 changes: 7 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@ An AI-native platform where DevOps best practices are discoverable and executabl
This repository follows a "Single Source of Truth" philosophy:

- **static/marketplace/**: Complete skills, agents, and MCP servers with content only (no metadata files)
- **static/data/registry.json**: Manually curated marketplace metadata registry
- **static/data/registry.json**: Hand-authored **source of truth** for all marketplace metadata
- **.claude-plugin/marketplace.json**: Claude Code plugin manifest, **generated** from `registry.json` by `src/conf/generate-marketplace.js` (runs during `npm run prebuild`)
- **website/**: Docusaurus-based website for browsing and discovering best practices

## Getting Started
Expand All @@ -29,11 +30,12 @@ gem install slim-<skill-name>
### For Contributors

1. Add your skill content to `static/marketplace/skills/<skill-name>/` (SKILL.md, assets, scripts, etc.)
2. Manually add/update the skill entry in `static/data/registry.json`
3. Test the website: `cd website && npm run serve`
4. Submit a pull request
2. Add/update the skill entry in `static/data/registry.json`
3. Run `npm run prebuild` to regenerate `.claude-plugin/marketplace.json`
4. Test the website: `npm run serve`
5. Commit both `registry.json` and `marketplace.json`, then submit a pull request

**Note:** Skills contain only content files (SKILL.md, assets, scripts, references). All metadata is maintained in registry.json.
**Note:** Skills contain only content files (SKILL.md, assets, scripts, references). All metadata is hand-authored in `registry.json`; `marketplace.json` is generated from it.

## Available Skills

Expand Down
18 changes: 11 additions & 7 deletions docs/contribute/submit-ai-plugin.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,25 +58,29 @@ marketplace/skills/your-skill-name/
```

**Registry entry:**
Add to `.claude-plugin/marketplace.json`:
Add an entry to the `skills` array in `static/data/registry.json` — the
hand-authored source of truth:
```json
{
"name": "your-skill-name",
"displayName": "Your Skill Display Name",
"description": "What it does and when to use it",
"source": "./static/marketplace",
"strict": false,
"skills": ["./skills/your-skill-name"],
"keywords": [
"category": "documentation",
"tags": [
"readme",
"documentation",
"project-setup",
"templates",
"onboarding"
]
],
"example": "Generate a README for this project",
"lastUpdated": "2026-01-01"
}
```

NOTE: make sure to add your entry to the marketplace JSON - that will ensure it gets properly detected and then inserted or updated into the `/static/data/registry.json` file.
NOTE: `static/data/registry.json` is the single source of truth. The Claude Code
manifest `.claude-plugin/marketplace.json` is generated from it — run
`npm run prebuild` after editing the registry, and commit both files.

**Need help?** See [skill development best practices](https://platform.claude.com/docs/en/agents-and-tools/agent-skills/best-practices)

Expand Down
Loading
Loading