[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-81716":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":14,"subscribersCount":14,"size":14,"stars1d":13,"stars7d":15,"stars30d":16,"stars90d":14,"forks30d":14,"starsTrendScore":15,"compositeScore":17,"rankGlobal":9,"rankLanguage":9,"license":9,"archived":18,"fork":18,"defaultBranch":19,"hasWiki":20,"hasPages":18,"topics":21,"createdAt":9,"pushedAt":9,"updatedAt":22,"readmeContent":23,"aiSummary":24,"trendingCount":14,"starSnapshotCount":14,"syncStatus":25,"lastSyncTime":26,"discoverSource":27},81716,"simulator-ai-plugin","corezoid\u002Fsimulator-ai-plugin","corezoid","Claude Code & Codex plugin for Simulator.Company — a Go MCP server exposing the platform REST API plus skills for actors, graphs, forms, and financial accounts.",null,"Go",50,1,3,0,9,10,49.4,false,"main",true,[],"2026-06-12 04:01:35","# Simulator.Company — Claude Code & Codex Plugin\n\n> **Status:** stable — released, actively maintained. Supported clients: Claude Code ≥ 1.x, Codex. Go 1.24+ required. macOS and Linux tested.\n\nA plugin for [Claude Code](https:\u002F\u002Fclaude.ai\u002Fcode) and [Codex](https:\u002F\u002Fcodex.openai.com) that connects the [Simulator.Company](https:\u002F\u002Fsimulator.company) platform to Claude via MCP (Model Context Protocol). Claude gets direct access to the Simulator REST API and domain knowledge to manage actors, graphs, forms, and financial accounts through natural conversation.\n\n## What it does\n\nThe plugin bundles a Go MCP server that exposes the full Simulator.Company public API as MCP tools and provides specialist skills that teach Claude the platform's entity model and common workflows:\n\n| Skill                | Activate with                                            | Covers                                                  |\n|----------------------|----------------------------------------------------------|---------------------------------------------------------|\n| `simulator`          | \"use Simulator\", \"call Simulator API\"                    | Full platform overview, all entities, MCP tools         |\n| `simulator-init`     | \"setup\", \"connect to simulator\", \"login to simulator\"    | OAuth login, workspace selection, environment setup     |\n| `simulator-graph`    | \"create actor\", \"link nodes\", \"add to layer\"             | Actors, links, layers, graph traversal, bulk push\u002Fpull  |\n| `simulator-forms`    | \"create form\", \"design template\", \"field structure\"      | Form templates, field types, system forms               |\n| `simulator-finance`  | \"record transaction\", \"account balance\", \"transfer funds\"| Accounts, transactions, transfers, currencies           |\n\n## Requirements\n\n- [Claude Code](https:\u002F\u002Fclaude.ai\u002Fcode) or [Codex](https:\u002F\u002Fcodex.openai.com) installed\n- [Go 1.24+](https:\u002F\u002Fgo.dev\u002Fdl\u002F) available in `PATH` (the MCP server runs via `go run`, no build step needed)\n  ```bash\n  brew install golang        # macOS\n  sudo apt install golang    # Ubuntu\u002FDebian\n  ```\n  Verify with `go version`.\n- A Simulator.Company account\n\n## Installation\n\n### Claude Code\n\n**From the GitHub marketplace:**\n\n```bash\nclaude plugin marketplace add corezoid\u002Fsimulator-ai-plugin\nclaude plugin install simulator@simulator\n```\n\n**Or from a local clone:**\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fcorezoid\u002Fsimulator-ai-plugin\nclaude plugin marketplace add .\u002Fsimulator-ai-plugin\nclaude plugin install simulator@simulator\n```\n\n### Codex\n\n**From the GitHub marketplace:**\n\n```bash\ncodex plugin marketplace add corezoid\u002Fsimulator-ai-plugin\ncodex plugin install simulator@simulator\n```\n\n**Or from a local clone:**\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fcorezoid\u002Fsimulator-ai-plugin\ncodex plugin marketplace add .\u002Fsimulator-ai-plugin\ncodex plugin install simulator@simulator\n```\n\nNo build step, no extra setup. The MCP server starts automatically on first use.\n\n### Updating\n\n```bash\nclaude plugin update simulator@simulator   # Claude Code\ncodex plugin update simulator@simulator    # Codex\n```\n\nRestart Claude Code \u002F Codex after updating to apply the new version.\n\n## Authentication\n\nOn the first Simulator operation Claude detects that no token is present and runs the `login` tool automatically — your browser opens at `account.corezoid.com` for OAuth2 sign-in and the session continues without interruption. After login Claude uses MCP elicitation to let you pick a workspace from the list returned by the account API.\n\nThe token is saved to `.env` in your working directory (mode `0600`) and reused on every subsequent session. When it expires, the login flow triggers again automatically.\n\nYou can also trigger login manually at any time:\n\n```\nlog in to Simulator\n```\n\n### Static token (optional)\n\nIf you prefer to manage the token yourself, set it in `.env` or export it before starting Claude Code or Codex:\n\n```bash\nexport ACCESS_TOKEN=your_token_here\n```\n\nThe static token takes priority over saved credentials.\n\n## Configuration\n\n| Environment variable          | Required | Description                                                                 |\n|-------------------------------|----------|-----------------------------------------------------------------------------|\n| `ACCESS_TOKEN`                | No       | Static token — overrides OAuth2 saved credentials                           |\n| `ACCESS_TOKEN_EXPIRES_AT`     | No       | Token expiry timestamp (RFC 3339) — written automatically after OAuth login |\n| `ACCOUNT_URL`                 | No       | Override the default account URL (`https:\u002F\u002Faccount.corezoid.com`)           |\n| `WORKSPACE_ID`                | No       | Default workspace ID (`accId`) — set automatically after `set-workspace`    |\n| `SIMULATOR_OAUTH_CLIENT_ID`   | No       | OAuth2 client ID — on-prem deployments with a custom authorization server should set this to their own client ID; cloud (account.corezoid.com) users do not need it |\n\nAll values are read from a `.env` file in the current working directory at startup, and the `login` \u002F `set-workspace` tools persist their results back to that file.\n\n## Usage\n\nOnce installed, just talk to Claude naturally:\n\n```\nCreate a business process graph for customer onboarding with three steps:\nDocument Collection → Review → Approval. Add all steps to a layer.\n```\n\n```\nCreate a Car form template with fields: make, model, year, color, VIN.\nAdd financial accounts: purchase value (USD asset), maintenance costs (USD expense),\nand a mileage counter (km).\n```\n\n```\nRecord a $450 maintenance transaction on the Toyota Camry actor.\nThen show me all accounts and their current balances.\n```\n\n```\nSearch for all actors of form type \"Task\" on the \"Main Process\" layer.\n```\n\n```\nPull layer 1a2b3c4d-... to a local YAML, let me edit it, then push it back.\n```\n\n## MCP Tools\n\nThe MCP server exposes a small set of hand-written tools plus every operation discovered in the bundled Simulator OpenAPI spec (80+ endpoints). All API-derived tools follow the operation IDs from the swagger spec (e.g. `createActor`, `getCompanies`, `searchActors`, `createTransfer`, …).\n\n| Tool             | Description                                                                                          |\n|------------------|------------------------------------------------------------------------------------------------------|\n| `login`          | Authenticate via OAuth2 PKCE (opens browser); elicits account URL + workspace and writes them to `.env` |\n| `set-workspace`  | Save the active workspace ID (`accId`) to `.env` as `WORKSPACE_ID`                                   |\n| `pullGraphFile`  | Fetch all actors and edges from a layer and write them to `\u003ClayerId>.yaml` in the working directory  |\n| `pushGraphFile`  | Read `\u003ClayerId>.yaml` and sync it with the server layer: create \u002F update \u002F remove to match the file  |\n| `createActors`   | Bulk-create up to 50 actors in one call; returns the list of new actor IDs                           |\n| `\u003CoperationId>`  | One tool per Simulator REST operation (auto-generated from the bundled OpenAPI spec)                 |\n\n## Architecture\n\n```\nClaude Code \u002F Codex\n  └── simulator MCP server (go run .)\n        ├── Auth          login (OAuth2 PKCE → .env), set-workspace\n        ├── Graph helpers pullGraphFile, pushGraphFile, createActors\n        └── REST passthrough\n              └── one MCP tool per operation in sim-public-swagger.json\n                  (createActor, searchActors, createLink, createLayer,\n                   createForm, createAccount, createTransaction, createTransfer, …)\n```\n\nThe MCP server is a generic Swagger→MCP bridge that reads the bundled `swagger\u002Fsim-public-swagger.json` and converts every endpoint into an MCP-callable operation. Skills add the domain knowledge on top.\n\n### Simulator.Company Entity Model\n\n```\nWorkspace (accId)\n  ├── Forms          — templates defining actor structure and field types\n  │     └── Actors  — instances (nodes in the business process graph)\n  │           ├── Links        — directed edges connecting actors\n  │           ├── Layers       — visual views with actor positions\n  │           ├── Accounts     — financial\u002Fmetric tracking (asset, expense, counter...)\n  │           │     ├── Transactions  — credits and debits on a single account\n  │           │     └── Transfers     — atomic movement between two accounts\n  │           ├── Reactions    — comments, approvals, ratings\n  │           └── Attachments  — file storage\n  ├── Currencies     — units of value for accounts (USD, EUR, Km, Units...)\n  ├── Account Names  — category labels for accounts\n  └── Link Types     — categories for edges between actors\n```\n\n## Skills reference\n\n### `\u002Fsimulator`\nUniversal Simulator assistant. Knows the full platform model, all entity types, and common workflow sequences. Use this when you need guidance across multiple domains or want to explore what's possible.\n\n### `\u002Fsimulator-init`\nEnvironment setup assistant — runs `login`, picks a workspace, and saves credentials to `.env`. Use it the first time you connect to Simulator or when switching workspaces.\n\n### `\u002Fsimulator-graph`\nSpecialist for graph structure operations:\n- Create, update, search, and delete actors\n- Create single or bulk links between actors\n- Manage layers — add actors with positions, search by form or text, move between layers\n- Traverse the graph — get linked actors, actor links, global layer membership\n- Pull a whole layer to YAML, edit locally, push it back\n\n### `\u002Fsimulator-forms`\nSpecialist for form template design:\n- Create custom forms with typed fields (text, number, select, date, file, formula, reference)\n- Define default account structures within forms (auto-created for every new actor)\n- Work with system forms (Graph, Layer, Event, Script\u002FCDU, Account, Currency, Transaction...)\n- Update, version, and manage form status\n\n### `\u002Fsimulator-finance`\nSpecialist for financial and metric tracking:\n- Set up currencies and account name categories\n- Create accounts of any type on actors (asset, liability, expense, income, counter, state)\n- Record immediate or 2-step (authorize → complete\u002Fcancel) transactions\n- Create atomic multi-account transfers\n- Query balances, transaction history, and filter transfers\n\n## Project structure\n\n```\nsimulator-ai-plugin\u002F\n├── .claude-plugin\u002F\n│   ├── marketplace.json         # Claude Code marketplace listing (points to plugins\u002Fsimulator)\n│   └── plugin.json              # Claude Code plugin manifest (root-level install target)\n├── .mcp.json                    # Root-level MCP server config (used when installed via marketplace)\n├── .agents\u002F\n│   └── plugins\u002F\n│       └── marketplace.json     # Codex marketplace listing (points to plugins\u002Fsimulator)\n└── plugins\u002Fsimulator\u002F           # Plugin root (CLAUDE_PLUGIN_ROOT for both Claude Code and Codex)\n    ├── .claude-plugin\u002F\n    │   └── plugin.json          # Claude Code plugin manifest\n    ├── .codex-plugin\u002F\n    │   └── plugin.json          # Codex plugin manifest\n    ├── .mcp.json                # MCP server configuration (go run . --spec simulator)\n    ├── mcp-server\u002F              # Go MCP server source\n    │   ├── main.go\n    │   ├── specs.go\n    │   ├── go.mod \u002F go.sum\n    │   ├── app\u002F\n    │   │   ├── auth\u002F            # OAuth2 PKCE flow + .env credential storage\n    │   │   ├── mcp-server\u002F      # MCP server, push\u002Fpull graph handlers\n    │   │   ├── models\u002F          # OpenAPI data models\n    │   │   └── swagger\u002F         # Swagger loader\n    │   ├── swagger\u002F             # Bundled OpenAPI specs\n    │   │   ├── sim-public-swagger.json\n    │   │   └── sim-public-swagger-all.json\n    │   └── info\u002F\n    ├── skills\u002F\n    │   ├── simulator\u002F                      # Universal assistant skill\n    │   │   ├── SKILL.md\n    │   │   └── references\u002Fapi-operations.md\n    │   ├── simulator-init\u002F                 # Environment setup skill\n    │   ├── simulator-graph\u002F                # Graph specialist skill\n    │   ├── simulator-forms\u002F                # Forms specialist skill\n    │   └── simulator-finance\u002F              # Finance specialist skill\n    └── docs\u002F                    # Entity and user-flow documentation\n        ├── entities\u002F\n        └── user-flows\u002F\n```\n\n## Debugging\n\nThe MCP server always writes debug output to `\u002Ftmp\u002Fsimulator.log` when running in MCP mode. View it with:\n\n```bash\ntail -f \u002Ftmp\u002Fsimulator.log\n```\n\nIn CLI mode, you can invoke a single tool without starting the MCP transport:\n\n```bash\ncd plugins\u002Fsimulator\u002Fmcp-server\ngo run . \u003Ctool-name> key=value ...\n# e.g.\ngo run . getCompanies\n```\n\n## Compatibility\n\n| Component         | Supported versions            | Notes                                       |\n|-------------------|-------------------------------|---------------------------------------------|\n| Claude Code       | ≥ 1.x                         | MCP protocol 2025-03-26                     |\n| Codex             | current stable                | Same MCP server, same skills                |\n| Go toolchain      | 1.24+ (module declares 1.25)  | Required to run the MCP server via `go run` |\n| macOS             | 13 Ventura and later          | Tested on arm64 and amd64                   |\n| Linux             | Ubuntu 22.04+, Debian 12+     | amd64 tested                                |\n| Windows           | not tested                    | Likely works; PRs welcome                   |\n\n> **Note:** If your Go installation is older than the module's `go` directive, the toolchain manager will try to download a newer version from `proxy.golang.org`. In air-gapped environments set `GOTOOLCHAIN=local` and install a matching Go version manually.\n\n## Links\n\n- [Simulator.Company](https:\u002F\u002Fsimulator.company)\n- [API Documentation](https:\u002F\u002Fdoc.simulator.company)\n- [Claude Code](https:\u002F\u002Fclaude.ai\u002Fcode)\n- [MCP Protocol](https:\u002F\u002Fmodelcontextprotocol.io)\n\n## License\n\nMIT\n","该项目是一个为Claude Code和Codex设计的插件，用于通过MCP协议将Simulator.Company平台与Claude连接起来。核心功能包括通过自然对话管理平台上的演员、图谱、表单及财务账户等实体，并提供了多种专业技能以增强Claude对平台模型的理解及操作能力，如初始化设置、图谱构建、表单设计以及财务管理等。该插件基于Go语言开发，支持macOS和Linux系统，适用于需要利用AI助手来简化复杂业务流程或数据分析任务的场景，特别适合已经使用Claude Code或Codex并且希望集成更高级别模拟功能的用户。",2,"2026-06-11 04:06:06","CREATED_QUERY"]