Token导航 LogoToken导航TokenDH.com
structured skills logo
运维云端stdio官方级别未说明来源级核验

structured skills

MCP Server

一个无需LLM的代理技能管理库,支持从技能目录中发现、搜索、检查和执行脚本或函数。

工具数

3

提示词数

0

GitHub Stars

0

资源数

0
Python云端部署Docker

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

NoRaincheck

提供方

NoRaincheck

最后核验

2026/5/17 20:20

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

uv run structured_skills.py <skills_dir> search [query] --limit 10

详细介绍

结构化技能

](https://badge.fury.io/py/structured_skills) ![CI](https://github.com/NoRaincheck/structured_skills/actions/workflows/ci.yml)

面向代理的结构化技能-从技能目录启动MCP服务器

无需法学硕士

这个库的目标是,它可以在没有任何法学硕士的情况下工作。 技能由您控制的脚本和资源明确定义。与可以执行任意命令的AI代理不同,structured_skills只运行您在技能目录中明确定义的内容。一切都由你写的脚本控制——没有惊喜,没有无限的执行。

它支持什么

  • 从包含技能文件夹的根目录中查找技能 SKILL.md.
  • 搜索和检查技能和脚本/功能目标。
  • 读取具有路径遍历保护的技能目录下的文件。
  • 执行:

- 脚本路径位于 scripts/ (例如 echo.py),或 - 按名称列出函数目标(例如 add).

单文件脚本模式(uv)

存储库包括 structured_skills.py 作为单个文件uv脚本:

uv run structured_skills.py  search [query] --limit 10
uv run structured_skills.py  inspect  [resource_name] [--include-body]
uv run structured_skills.py  execute   --args '{"a":2,"b":3}'

例子:

uv run structured_skills.py tests/fixtures/skills search
uv run structured_skills.py tests/fixtures/skills inspect echo-skill
uv run structured_skills.py tests/fixtures/skills inspect echo-skill --include-body
uv run structured_skills.py tests/fixtures/skills inspect math-skill resources/README.txt
uv run structured_skills.py tests/fixtures/skills execute math-skill add --args '{"a":2,"b":3}'
uv run structured_skills.py tests/fixtures/skills mcp --server-name structured_skills

封装模式

通过项目工具安装/运行:

uv run pytest
uv run skill-tools tests/fixtures/skills search
uv run skill-tools tests/fixtures/skills mcp --server-name structured_skills

控制台脚本入口点为 skill-tools 并映射到 structured_skills.main:main.

Heartbeat守护进程(独立)

该存储库还包括一个独立的仅支持stdlib的调度程序,位于 heartbeat_daemon.py.

运行它:

uv run heartbeat_daemon.py scheduler.toml

scheduler.toml 使用带有命名任务表的扁平根:

version = 1

[daemon]
heartbeat = "1m"
timezone = "UTC"
state_file = "./scheduler-state.json"
shell = "/bin/sh"

[tasks.poll-inbox]
run = "bin/poll-inbox"
every = "5m"

[tasks.daily-summary]
run = "bin/daily-summary"
at = "09:00"

[tasks.backfill-march]
run = "bin/backfill --month 2026-03"
at = "2026-03-15T04:00:00Z"

每个任务都必须定义 run 并且只有一种调度模式:

  • every = "" 用于重复运行
  • at = "HH:MM"at = "HH:MM:SS" 用于日常跑步
  • at = "" 用于一次性跑步

当前支持的可选任务键:

  • enabled = true
  • timeout = "10m"
  • start_at = "..." (为 every 任务)

MCP服务器模式(FastMCP)

structured_skills 可以作为MCP服务器运行,提供三个工具: search, inspect,以及 execute.

  • 单文件脚本模式:

- uv run structured_skills.py mcp --server-name structured_skills

  • 包装方式:

- uv run skill-tools mcp --server-name structured_skills

技能代理(Python API)

注册表提供 skill() 返回代理对象的方法,允许您调用技能函数和脚本,就像它们是对象上的方法一样:

from pathlib import Path
from structured_skills import SkillRegistry

registry = SkillRegistry(Path("skills"))

# Call a function directly
proxy = registry.skill("math-skill")
result = proxy.add(a=2, b=3)  # Returns 5

# Call a script
result = proxy.math_ops(a=2, b=3)  # Returns 5

# Works with positional args too
result = proxy.add(2, 3)  # Returns 5

代理人:

  • 发现技能中的函数和脚本 scripts/ 目录
  • 允许您将它们称为带有关键字或位置参数的Python方法
  • 提高 AttributeError 如果函数/脚本不存在
  • 提高 TypeError 对于重复的参数值

Python API

主要进口:

from pathlib import Path
from structured_skills import SkillRegistry, SkillToolsBuilder

registry = SkillRegistry(Path("tests/fixtures/skills"))
result = registry.execute("math-skill", "add", {"a": 2, "b": 3})
print(result)

目录标签

目录标签

Python云端部署Docker代理技能管理本地部署脚本执行函数调用技能发现MCP服务器

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

3

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP