@creator-studio-os/core
v2.0.1
Published
Shared runtime for Creator Studio OS — AppleScript runners, project schema, ledger, error types, iWork shared automation
Maintainers
Readme
@creator-studio-os/core
Creator Studio OS 的共享运行时环境,包括 AppleScript 运行器、项目结构、日志记录、错误类型以及 iWork 共享自动化功能。
它是 Creator Studio OS MCP 控制平面的一部分,用于 Apple Creator Studio 应用程序。
安装
npm install @creator-studio-os/core此包的作用
@creator-studio-os/core 是所有其他 @creator-studio-os/* 包共享的运行时基础。它提供以下功能:
- AppleScript 运行器 —
runAppleScript,runApp,awaitOutput,openApp,withDaemonRecovery - 项目结构 —
ProjectV2Zod 模式、解析器以及类型化路径映射 - 错误系统 —
CreatorStudioError,具有结构化的{ code, message, hint }格式 - 配置 —
loadConfig()函数读取CREATOR_STUDIO_DATA_DIR以及所有应用程序的 Bundle ID - 日志记录 — 结构化的编码/项目历史记录,存储在
<dataDir>/.csos/ledger.jsonl文件中 - iWork 共享 —
openDocumentInApp,closeDocumentInApp,exportDocumentInApp,activateApp,isAppRunning
工具 (1)
| 工具 | 描述 |
|------|-------------|
| csos_app_status | 检查是否有 Creator Studio 应用程序正在运行且状态良好。 传递 app="all" 以一次性查询所有 8 个应用程序。 |
示例
import {
runAppleScript,
CreatorStudioError,
loadConfig,
registerStatusTool,
} from "@creator-studio-os/core";
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
const server = new McpServer({ name: "csos", version: "2.0.0" });
registerStatusTool(server);
// Escape user input before interpolation — always
const name = escapeAppleScriptString(userInput);
const result = await runAppleScript(`tell app "Keynote" to get name of document "${name}"`);错误处理
所有运行时错误都是 CreatorStudioError 类型:
import { CreatorStudioError } from "@creator-studio-os/core";
try {
await runAppleScript(`...`);
} catch (err) {
if (err instanceof CreatorStudioError) {
console.error(err.code); // "E_OSASCRIPT_FAILED", "E_AUTOMATION_DENIED", …
console.error(err.hint); // actionable suggestion
}
}macOS 需求
@creator-studio-os/core 仅适用于 macOS ("os": ["darwin"])。 AppleScript 运行器调用 osascript;openApp 使用 open -b <bundleId> 命令。
