Token导航 LogoToken导航TokenDH.com
研究检索需要联网github未标认证来源可访问许可证需确认审计通过

ost-toolsOST 工具

Agent Skill

ost-tools 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

218

周安装

9

GitHub Stars

公开资料未说明

下载量

71
CodexClaudeCursorGemini CLI

安装说明

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

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:ost-tools(OST 工具)
来源仓库:https://github.com/mindsocket/ost-tools
仓库路径:skills/ost-tools
安装命令:
npx skills add https://github.com/mindsocket/ost-tools --skill ost-tools
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/mindsocket/ost-tools --skill ost-tools

简介

ost-tools 用于查找、检索和筛选相关信息,适合在需要根据关键词快速定位候选结果的场景中使用。

  • 适用于研究检索类任务,可结合来源仓库和原始 README 核验具体用法。
  • 通过 npx skills add 命令从 mindsocket/ost-tools 仓库安装。
  • 安装前建议确认权限范围和维护状态,避免触发联网或文件读写操作。
  • 使用时需注意工具输出不能直接作为最终结论,应结合实际场景验证结果。

SKILL.md

ost-tools

ost-tools validates Obsidian markdown frontmatter against JSON schemas. Content lives in spaces (directories of .md files or a single "on-a-page" format); schemas define entity types, properties, and rules.

Finding the config

ost-tools looks in $XDG_CONFIG_HOME/ost-tools/config.json, unless given an explicit config, e.g.:

bunx ost-tools validate <space> --config path/to/config.json
# or
OST_TOOLS_CONFIG=path/to/config.json bunx ost-tools validate <space>

Always read the config first to understand available spaces and their schema locations before running other commands.

Tip: To reduce the need for --config flags consider, with user permission, using includeSpacesFrom in a central config file that's loaded by default (eg ~/.config/ost-tools/config.json).

Orientation

Before working with a space, use these to understand what's configured:

bunx ost-tools spaces --config <cfg>                        # per-space: path, schema, fieldMap, templates, miro
bunx ost-tools schemas show --space <name> --config <cfg>  # entity types, properties, rules, enums + registry
bunx ost-tools schemas show <filename>                      # inspect a bundled partial (e.g. _ost_tools_base.json)
bunx ost-tools readme                                       # full documentation if needed

spaces is the starting point — it shows each space as a block with its schema name, fieldMap mappings (if any), template config, and whether Miro is configured.

schemas show --space is the primary schema tool — it lists entity types and their properties (required marked with *), the hierarchy, adjacent relationships, all rules with descriptions, definitions with enum values, and the loaded schema registry. Run this before authoring content or writing rules to ensure you use the correct field names and types. The registry section at the bottom shows which bundled and local partials are in scope for $ref targets.

schemas show <filename> (e.g. _ost_tools_base.json) reveals available definitions in bundled partials.

Commands for working with spaces

validate <space>       Validate space content against schema (--watch for live)
show <space>           Output the node hierarchy
dump <space>           Output parsed node data as JSON
diagram <space>        Generate Mermaid diagram (--output <file>)
miro-sync <space>      Sync to Miro board (requires MIRO_TOKEN env var + miroBoardId in config)
template-sync <space>  Sync Obsidian templates from schema examples
plugins                List available plugins

All commands require a registered space name. Run bunx ost-tools --help or bunx ost-tools <command> --help for flags.

dump is the key debugging tool. Use it to verify fieldMap remapping is working or to inspect exactly what JSONata rules see when a rule fires unexpectedly.

Embedded nodes and Relationships

Embedded nodes are nodes that live physically inside another node's file (via tables or lists) rather than as separate files.

Adjacent Relationships determine how these are parsed:

  • Heading matching: When a heading matches a relationship matcher (case-insensitive or /regex/), following tables/lists are parsed as that child type.
  • Agnostic parsing: The parser uses the semantic grandparent as the parent for items matched via a relationship heading.
  • fieldOn direction: Relationships support two link directions. fieldOn: "child" (default) sets the relationship field on each child node. fieldOn: "parent" instead populates the parent node's array field with [[Child]] wikilinks — use this when the content model lists children on the parent (e.g. activity.tasks). When fieldOn: "parent", child nodes do not get a parent field from the relationship.

When to use sub-entities:

  • For fine-grained items like Assumption, Risk, or Requirement that would clutter the filesystem if separate.
  • When you want to group related child nodes under a stable heading in a parent's body.
  • For developing a template page with structured headings and lists or tables to fill in.

Authoring content frontmatter

When writing or editing Obsidian markdown frontmatter:

  • Do not include title — Obsidian derives the page title from the filename.
  • Tags use plain strings — In Obsidian frontmatter, tags are listed as plain strings without a # prefix (e.g. tags: [adhd, reading]). The # prefix is only used for inline tags in the document body.
  • Check entity descriptions before assigning a type to an existing document — Run schemas show --space <name>. The description for each entity type, as well as any rules, should be carefully considered as part of determining that a type is appropriate for an existing document.

Non-obvious issues

All files appear as "Non-space (no type field)" — the space uses a different field name for the entity discriminator (e.g., record_type). Configure fieldMap in the space config to remap it to type.

Rule violations on every node of a type — the rule may be too strict or misconfigured. Use dump to verify what the rule actually sees in the current object, then adjust the rule in the schema.

show/diagram show only orphans and non-hierarchy types — the schema's $metadata.hierarchy may not have edge configuration for the space's relationship fields. Use schemas show --space <name> to check the hierarchy definition. Each non-root level can define a field entry (overriding default parent: field (and optionally fieldOn: "parent" / multiple: true) to wire up the correct relationship field.

Troubleshooting Common Errors

Error MessageLikely CauseSolution
File has no type fieldDiscriminator field missing or named differentlyCheck fieldMap in config or add type to frontmatter
must have property 'X'Required schema property missingCheck schemas show --space to see required properties
could not find node '[[Title]]'Broken wikilinkFix the title in the link or ensure the target file exists and has that title
JSONata error:...Syntax error in schema $metadata.rulesVerify the expression with dump and a JSONata tester

Plugins

ost-tools supports plugins for extending capabilities. Currently, parse plugins allow reading spaces from sources other than markdown (which is a built-in plugin).

Declare plugins in config as a of plugin name → config object:

{
  "spaces": [
    {
      "name": "PDFSpace",
      "path": "https://...",
      "plugins": {
        "ost-tools-pdf": { "baseUrl": "https://example.pdfstore.net" }
      }
    }
  ]
}

All plugin names must start with ost-tools- (the prefix is optional in config and normalised on load). External plugins are resolved in order: config-adjacent ({configDir}/plugins/{name}), then npm.

Markdown plugin config (under plugins.markdown in a space entry):

  • templateDir — directory for template files used by template-sync, and to exclude templates when parsing and validating
  • templatePrefix — filename prefix for templates (default blank)
  • fieldMap — maps file field names to canonical schema field names (e.g. {"record_type": "type"})

References

  • references/schema-authoring.md — schema file structure, $metadata, fieldMap, JSONata rules
  • references/schema-design.md — process for designing a schema from existing content
  • references/commands.md — detailed CLI usage and examples

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

35.52%
按下载量换算25

Claude

31.38%
按下载量换算22

Cursor

17.6%
按下载量换算12

Gemini CLI

9.32%
按下载量换算7

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills