Agent platform configuration as code _Define instructions, skills, agents, MCP servers, hooks, workflows, and policies once.
$ npx -y skills add mrwogu/promptscript --agent claude-code
Run the curl in your terminal, the rest in Claude Code.
Repo: mrwogu/promptscript
What's inside
Agent platform configuration as code
Define instructions, skills, agents, MCP servers, hooks, workflows, and policies once. Compile native configuration for 48 AI coding platforms.
Get started ยท Try the playground ยท Explore all features ยท View target matrix
AI coding tools no longer consume one instruction file. They discover skills, specialist agents, commands, MCP integrations, hooks, workflows, and platform-specific settings from different paths and schemas. Managing these files by hand creates drift between tools, repositories, and teams.
PromptScript turns that surface area into one validated, composable, Git-native source:
PromptScript source
-> resolve inheritance, imports, and policies
-> validate language and capabilities
-> compile deterministic target-native files
No runtime proxy. No lowest-common-denominator output. Each formatter emits the richest native representation its platform supports.
npm install -g @promptscript/cli
prs init
# Edit .promptscript/project.prs
prs validate --strict
prs compile
prs init detects the project stack and installed AI tools, then creates a clean
promptscript.yaml and .promptscript/project.prs. Detected targets are preselected, while other
targets remain explicit choices. For automation, use prs init --yes --targets claude factory.
Hooks are installed by default. Use --no-hooks to skip hook installation or --dry-run to
preview all writes.
Prefer no local installation?
docker run --rm -v "$(pwd):/workspace" ghcr.io/mrwogu/promptscript:latest validate --strict
Or open the playground and compile in the browser.
.promptscript/project.prs:
@meta {
id: "checkout-service"
syntax: "1.5.0"
}
@identity {
"""
You are working on the checkout service.
Preserve transaction integrity and auditability.
"""
}
@standards {
@header "Engineering Standards"
code: ["Use strict TypeScript", "Test every business rule"]
}
@shortcuts {
"/review": {
prompt: true
description: "Review current changes"
content: "Review correctness, security, tests, and operational impact."
}
}
@skills {
security-review: {
description: "Review payment changes for security risks"
allowedTools: ["Read", "Grep", "Bash"]
content: "Inspect authentication, authorization, secrets, and payment data handling."
}
}
@mcpServers {
issue-tracker: {
transport: "stdio"
command: ["node", "./tools/issues.mjs"]
}
}
@agents {
reviewer: {
description: "Review changes before merge"
tools: ["Read", "Grep", "Glob", "Bash"]
skills: ["security-review"]
mcpServers: ["issue-tracker"]
content: "Review changed code, tests, and operational impact."
}
}
@hooks {
validate-changes: {
event: "post-tool-use"
matcher: "Edit|Write"
command: ["pnpm", "run", "typecheck"]
}
}
@workflows {
release: {
description: "Prepare a validated release"
content: "Run quality gates, summarize changes, and prepare release metadata."
}
}
@plugins {
engineering: {
description: "Shared engineering capabilities"
version: "1.0.0"
skills: ["security-review"]
hooks: ["validate-changes"]
mcpServers: ["issue-tracker"]
}
}
promptscript.yaml:
id: checkout-service
syntax: '1.5.0'
input:
entry: .promptscript/project.prs
targets:
- github:
version: multifile
- claude:
version: full
- cursor:
version: full
- opencode:
version: full
- gemini:
version: full
prs compile maps supported capabilities to files each platform already understands:
.github/copilot-instructions.md
.github/prompts/review.prompt.md
CLAUDE.md
.claude/agents/reviewer.md
.claude/skills/security-review/SKILL.md
.cursor/rules/project.mdc
.cursor/agents/reviewer.md
.opencode/agents/reviewer.md
| Capability | PromptScript source | Native result |
|---|---|---|
| Instructions and policy | @identity, @context, @standards, @restrictions, @guards | Main instructions and scoped rules |
| Portable skills | @skills | SKILL.md directories with references, assets, scripts, and contracts |
| Specialist agents | @agents | Native Markdown, TOML, or droid definitions with models, tools, skills, and MCP access |
| User commands | @shortcuts | Native prompts, slash commands, or documented shortcuts |
| Tool integrations | @mcpServers | Platform-specific JSON or TOML MCP configuration |
| Capability bundles | @plugins | Native plugin manifests where supported |
| Automation | @hooks, @workflows | Lifecycle hook configuration and workflow files |
| Monorepo delivery | builds in promptscript.yaml | Scoped output for packages, applications, and plugins |
Target support stays explicit. Unsupported platform-specific capabilities are omitted rather than approximated with incompatible configuration.
Build organization, team, and project layers with deterministic merge rules:
@inherit @company/platform
@use @team/backend
@use github.com/acme/agent-skills/database-review@1.3.0
@override standards.testing {
["Use Vitest", "Require 95% coverage"]
}
@extend standards {
testing: ["Run integration tests in CI"]
}
@inherit creates a single-parent base chain.@use composes multiple local, registry, Git, or Markdown resources.@extend merges selected paths and supports skill-specific overlays.@override atomically replaces one existing block or nested value.@header customizes generated section titles without changing native schemas.prs inspect <skill> shows property and layer provenance.Remote imports are pinned in promptscript.lock with commit and integrity data. Vendor mode mirrors
resolved dependencies into .promptscript/vendor/ for offline and air-gapped builds.
PromptScript accepts inline skills, standalone Markdown skills, and complete skill directories:
.promptscript/skills/security-review/
โโโ SKILL.md
โโโ references/
โ โโโ threat-model.md
โโโ scripts/
โ โโโ scan.sh
โโโ assets/
โโโ report-template.md
Import versioned skills without copy-paste:
@use github.com/acme/agent-skills/security-review@^2.0.0
prs skills add github.com/acme/agent-skills/security-review@2.1.0
prs skills update
PromptScript validates Agent Skills metadata, resolves dependencies and resources, then emits the native skill path for each selected platform. Agents can reference those skills and receive target-native model, reasoning, sandbox, tool, permission, and MCP settings.
PromptScript ships 48 output targets:
See exact output paths and feature support in the formatter capability matrix.
.prs source.prs build <name> or every profile with
prs compile --all-builds.prs validate --strict --format json, prs compile --dry-run, and
prs diff.prs import CLAUDE.md
prs migrate --static --dry-run
prs migrate --static
prs migrate --llm
Import existing Claude Code, GitHub Copilot, Cursor, AGENTS.md, and other instruction files. Review
the generated .prs source, preview output with prs compile --dry-run, then migrate targets at
your own pace. Migration preserves existing PromptScript configuration and source instructions;
if no candidates are detected, it changes nothing.
Targets with native skill support can also receive the bundled PromptScript language skill. This
lets compatible agents read and maintain .prs files from plain-language requests. Disable it
with includePromptScriptSkill: false.
prs serve - connect the online playground to local filesprs compile --watch - recompile after editor changesprs hooks install - integrate supported AI tools and protect generated files| Resource | Description |
|---|---|
| Getting Started | First project from initialization to native output |
| Agent Platform | Skills, agents, MCP, plugins, hooks, workflows, and targets |
| Language Reference | Complete PromptScript syntax |
| CLI Reference | Commands and options |
| Configuration Reference | Targets, registries, builds, policies, and formatting |
| Anonymous Usage Telemetry | Collected fields, delivery, and opt-out controls |
| Upgrade 1.15 to 1.16 | Syntax, block shape, and hook migration guide |
| Enterprise Guide | Organization-wide adoption and governance |
See CONTRIBUTING.md, CODE_OF_CONDUCT.md, and open issues.
PromptScript is available under the MIT License.
.claude/
agents/
code-reviewer.md
debugger.md
prs-expert.md
commands/
build.md
cli.md
export.md
newpkg.md
quality.md
refactor.md
security-review.md
test-coverage.md
test-e2e.md
test-integration.md
test-unit.md
test.md
threat-model.md
type.md
rules/
code-style.md
testing.md
settings.json
skills/
promptscript/
SKILL.md
skill-creator/
agents/
analyzer.md
comparator.md
grader.md
assets/
eval_review.html
eval-viewer/
generate_review.py
viewer.html
LICENSE.txt
references/
schemas.md
scripts/
__init__.py
aggregate_benchmark.py
generate_report.py
improve_description.py
package_skill.py
quick_validate.py
run_eval.py
run_loop.py
utils.py
SKILL.md
workflows/
add-block-keyword.md
new-task.md
verify.md
.dockerignore
.editorconfig
.factory/
commands/
build.md
cli.md
export.md
newpkg.md
quality.md
refactor.md
security-review.md
test-coverage.md
test-e2e.md
test-integration.md
test-unit.md
test.md
threat-model.md
type.md
droids/
code-reviewer.md
debugger.md
prs-expert.md
hooks.json
mcp.json
plugins.json
settings.json
skills/
promptscript/
SKILL.md
skill-creator/
agents/
analyzer.md
comparator.md
grader.md
assets/
eval_review.html
eval-viewer/
generate_review.py
viewer.html
LICENSE.txt
references/
schemas.md
scripts/
__init__.py
aggregate_benchmark.py
generate_report.py
improve_description.py
package_skill.py
quick_validate.py
run_eval.py
run_loop.py
utils.py
SKILL.md
.github/
agents/
code-reviewer.md
debugger.md
prs-expert.md
copilot-instructions.md
dependabot.yml
instructions/
testing.instructions.md
typescript.instructions.md
ISSUE_TEMPLATE/
bug_report.md
feature_request.md
prompts/
build.prompt.md
cli.prompt.md
export.prompt.md
newpkg.prompt.md
quality.prompt.md
refactor.prompt.md
security-review.prompt.md
test-coverage.prompt.md
test-e2e.prompt.md
test-integration.prompt.md
test-unit.prompt.md
test.prompt.md
threat-model.prompt.md
type.prompt.md
PULL_REQUEST_TEMPLATE.md
skills/
promptscript/
SKILL.md
skill-creator/
agents/
analyzer.md
comparator.md
grader.md
assets/
eval_review.html
eval-viewer/
generate_review.py
viewer.html
LICENSE.txt
references/
schemas.md
scripts/
__init__.py
aggregate_benchmark.py
generate_report.py
improve_description.py
package_skill.py
quick_validate.py
run_eval.py
run_loop.py
utils.py
SKILL.md
workflows/
ci.yml
dependabot-auto-merge.yml
docker-publish.yml
docs.yml
integration-tests.yml
publish.yml
release-please.yml
vscode-extension.yml
.gitignore
.husky/
pre-commit
.mcp.json
.nxignore
.prettierignore
.prettierrc
.promptscript/
automation.prs
commands.prs
context.prs
examples.prs
graph.prs
project.prs
restrictions.prs
scripts/
graph-status.sh
graph-update.sh
skills/
promptscript/
SKILL.md
standards.prs
workflows.prs
.release-please-manifest.json
.verdaccio/
config.yml
.vscode/
extensions.json
settings.json
AGENTS.md
apps/
vscode/
.vscodeignore
icons/
prs-icon.png
language-configuration.json
LICENSE
package.json
project.json
README.md
syntaxes/
promptscript.tmLanguage.json
CHANGELOG.md
CLAUDE.md
CODE_OF_CONDUCT.md
CONTRIBUTING.md
docker-compose.yaml
Dockerfile
docs/
docs_extensions/
__init__.py
mkdocs_hooks.py
promptscript_lexer.py
pyproject.toml
__snapshots__/
docs/
examples/
agent-platform.md/
checkout-agent-platform_L27/
claude.md
cursor.mdc
github.md
field-replacement_L145/
claude.md
cursor.mdc
github.md
agents.md/
my-project_L24/
claude.md
cursor.mdc
github.md
custom-section-headers.md/
localized-service_L10/
claude.md
cursor.mdc
github.md
enterprise.md/
@acme/
base_L88/
claude.md
cursor.mdc
github.md
compliance_L250/
claude.md
cursor.mdc
github.md
security_L157/
claude.md
cursor.mdc
github.md
fix-block-shapes.md/
shape-remediation_L38/
claude.md
cursor.mdc
github.md
git-registry.md/
@org/
base_L341/
claude.md
cursor.mdc
github.md
index.md/
api-service_L213/
claude.md
cursor.mdc
github.md
my-project_L146/
claude.md
cursor.mdc
github.md
react-app_L171/
claude.md
cursor.mdc
github.md
merge-vs-replace.md/
merge-vs-replace_L10/
claude.md
cursor.mdc
github.md
minimal.md/
minimal-example_L26/
claude.md
cursor.mdc
github.md
real-life-checkout-service.md/
commerce-org-base_L66/
claude.md
cursor.mdc
github.md
payment-policy_L108/
claude.md
cursor.mdc
github.md
skills-and-local.md/
my-fullstack-app_L30/
claude.md
cursor.mdc
github.md
team-setup.md/
@team/
frontend_L35/
claude.md
cursor.mdc
github.md
features/
agents.md/
agent-team_L11/
claude.md
cursor.mdc
github.md
index.md/
checkout-service_L44/
claude.md
cursor.mdc
github.md
getting-started.md/
api-service_L465/
claude.md
cursor.mdc
github.md
my-project_L144/
claude.md
cursor.mdc
github.md
guides/
ai-migration-best-practices.md/
api-service_L480/
claude.md
cursor.mdc
github.md
copilot-instructions-migration_L399/
claude.md
cursor.mdc
github.md
project-name_L221/
claude.md
cursor.mdc
github.md
enterprise.md/
@org/
base_L87/
claude.md
cursor.mdc
github.md
security_L142/
claude.md
cursor.mdc
github.md
examples.md/
code-review-examples_L145/
claude.md
cursor.mdc
github.md
commit-style_L52/
claude.md
cursor.mdc
github.md
my-project_L235/
claude.md
cursor.mdc
github.md
my-project_L24/
claude.md
cursor.mdc
github.md
naming-examples_L194/
claude.md
cursor.mdc
github.md
project-skills_L108/
claude.md
cursor.mdc
github.md
refactoring-examples_L77/
claude.md
cursor.mdc
github.md
guard-dependencies.md/
my-project_L31/
claude.md
cursor.mdc
github.md
inheritance.md/
@company/
base_L612/
claude.md
cursor.mdc
... 1515 moreFAQ
promptscript is a Claude Code plugin with 4 hand-picked skills for development work, indexed on Flowy. Install it with the command on its page. It includes promptscript, skill-creator, promptscript. Its skills do not fire on their own yet. Request auto-invocation to have Flowy route them as you prompt. Free and open source.