用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/aiskillstore/marketplace --skill enact-docs-guide命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
基于 SOC 职业分类
正在显示 SKILL.md
| enact | 2.0.0 |
| name | enact-docs-guide |
| version | 1.0.0 |
| description | LLM guide for creating, publishing, and running Enact tools |
| license | MIT |
| tags | ["documentation","guide","llm","tutorial"] |
| authors | [{"name":"Enact Protocol"}] |
| annotations | {"title":"Enact Tool Creation Guide","readOnlyHint":true} |
| inputSchema | {"type":"object","properties":{"topic":{"type":"string","description":"Specific topic to learn about","enum":["overview","creating","commands","languages","secrets","publishing","all"],"default":"all"}}} |
Enact: Containerized tools with structured I/O for AI agents.
enact run ./tool --input "key=value" # Run local tool
enact run ./tool --args '{"key":"value"}' # Run with JSON
enact run author/tool --input "x=y" # Run installed tool
enact install author/tool # Install to project
enact install author/tool -g # Install globally
enact search "query" # Find tools
enact sign ./tool && enact publish ./tool # Publish
my-tool/
├── enact.md # Required: YAML frontmatter + docs
└── main.py # Your code (any language)
---
enact: "2.0.0"
name: "namespace/category/tool-name"
version: "1.0.0"
description: "What it does"
from: "python:3.12-slim"
build: "pip install requests pandas"
command: "python /workspace/main.py ${input}"
timeout: "30s"
inputSchema:
type: object
properties:
input:
type: string
description: "Input description"
required: [input]
outputSchema:
type: object
[, ]
| Field | Required | Description |
|---|---|---|
name | Yes | namespace/category/tool |
description | Yes | What it does |
command | No* | Shell command with ${param} substitution |
from | No | Docker image (default: alpine:latest) |
build | No | Build commands (string or array), cached |
inputSchema | No | JSON Schema for inputs |
outputSchema | No | JSON Schema for outputs |
env | No | Environment vars (secret: true for keyring) |
timeout | No | Max runtime (default: 30s) |
version | No | Semver version |
tags | No | Discovery keywords |
*Tools without command are LLM instruction tools (markdown interpreted by AI).
from: "python:3.12-slim"
build: "pip install pandas"
command: "python /workspace/main.py ${input}"
from: "node:20-alpine"
build: "npm install"
command: "node /workspace/index.js ${input}"
from: "rust:1.83-slim"
build: "rustc /workspace/main.rs -o /workspace/app"
command: "/workspace/app ${input}"
from: "golang:1.22-alpine"
build: "go build -o /workspace/app /workspace/main.go"
command: "/workspace/app ${input}"
command: "echo 'Hello ${name}'"
Always output JSON matching outputSchema:
#!/usr/bin/env python3
import sys, json
input_val = sys.argv[1]
result = {"result": input_val.upper()}
print(json.dumps(result))
env:
API_KEY:
description: "API key"
secret: true # Stored in OS keyring, not .env
User sets: enact env set API_KEY --secret --namespace myorg/tools
Access in code via environment variable: os.environ['API_KEY']
command): Runs in Docker, deterministiccommand): Markdown body interpreted by LLM# 1. Create
mkdir my-tool && cd my-tool
# Create enact.md + source files
# 2. Test
enact run . --input "test=value"
# 3. Publish
enact auth login
enact sign .
enact publish .
name: namespace/category/tool formatdescription: clear, searchableinputSchema: validates inputsoutputSchema: documents outputfrom: pinned image version (not latest)build: installs dependenciescommand: uses ${param} for inputs