Skip to content

manor-os/manor

v0.9.1Manor Sustainable Use License 1.0

Build, version, test and deliver Manor Workspaces for your customers.

Manor plugin for Claude Code and Codex

Build, version, test and deliver Manor Workspaces for your customers from your coding agent. The plugin connects the agent to Manor's hosted MCP endpoint and adds Workspace skills:

SkillUse it to
build-workspaceTurn a customer brief into services, agents, workflows, skills, Knowledge, goals and rules on a live Workspace, then test it.
blueprint-as-codeKeep the Workspace's Blueprint in git: export, validate, prove a round trip with a simulated install, diff, release.
deliver-workspacePromote a simulation Workspace to live or deliver a trial copy to a client.

The portable package declares the MCP endpoint; the client discovers OAuth settings from the server. Manor's initial authentication challenge requests mcp. Check the permissions shown by your client before authorizing; computer access requires the additional permissions described above.

You sign in with your Manor account in the browser the first time a tool runs. The agent then acts as you, with your role in your current team: it can only do what you can do in Manor.

Install

Claude Code

claude plugin marketplace add manor-os/manor-os
claude plugin install manor@manor

Run /mcp and choose manor to sign in.

Codex

codex plugin marketplace add manor-os/manor-os

Then install Manor from /plugins. Codex signs in through the browser the first time the server is used. To request only Workspace access explicitly, run codex mcp login manor --scopes mcp --oauth-client-registration dcr.

Self-hosted Manor

The plugin points at Manor Cloud. For your own instance (endpoint <APP_URL>/api/v1/mcp), install the plugin for its skills and add the server under its own name:

claude mcp add --transport http manor-self-hosted https://manor.example.com/api/v1/mcp
codex mcp add manor-self-hosted --url https://manor.example.com/api/v1/mcp

The server needs APP_URL set to its public origin and must route /.well-known/oauth-authorization-server and /.well-known/oauth-protected-resource* to the API (the bundled nginx config already does). Self-registered clients may redirect only to loopback addresses; to allow a hosted callback, list it in MANOR_OAUTH_DYNAMIC_REDIRECT_URIS (comma-separated).

Tools

AreaTools
Inspectwhoami, list_workspaces, get_workspace, describe_workspace_operations (optional reference for already published tools)
Edit a live Workspacestage_workspace_change, apply_workspace_change, discard_workspace_change, design_workspace_app_view, upsert_workflow, run_workflow, list_run_input_choices, get_workflow_run, upsert_skill, add_knowledge_document, create_upload
Knowledgelist_knowledge, search_knowledge, search_knowledge_content, read_knowledge_document
Tasks and scheduleslist_tasks, get_task, list_scheduled_jobs, get_scheduled_job, upsert_scheduled_job, toggle_scheduled_job, run_scheduled_job
Statslist_stats, upsert_stat, add_assessed_metrics
Workspace as codeconfigure_knowledge_starter, export_blueprint, validate_blueprint, install_blueprint, compare_blueprints, promote_workspace, preview_workspace_upgrade, apply_workspace_upgrade, revert_workspace_upgrade
Deliverylist_clients, deliver_to_client, list_client_deliveries, publish_delivery_update

App design uses the same Workspace management boundary as operation drafts. Collaborators may design only inside their live-granted Workspace; the result remains a draft until explicitly reviewed and applied.

Each configuration operation is also published as an independent tool with its payload schema. All use workspace_id, payload, and optional draft_id:

ConfigurationIndividually published tools
Operating model and Appstage_workspace_operating_model_replace, stage_workspace_operating_model_update, stage_workspace_app_view_update, stage_workspace_workflow_binding_attach
Policiesstage_workspace_evaluation_update, stage_workspace_budget_policy_update, stage_workspace_heartbeat_policy_update, stage_workspace_governance_policy_update, stage_workspace_knowledge_policy_update, stage_workspace_strategist_update
Rules and goalsstage_workspace_rule_add, stage_workspace_rule_remove, stage_workspace_rule_update, stage_workspace_rules_replace, stage_workspace_goals_replace, stage_workspace_goal_upsert, stage_workspace_goal_measurement_sources_update
Services and Agentsstage_workspace_service_role_upsert, stage_workspace_service_role_remove, stage_workspace_agent_binding_upsert, stage_workspace_agent_binding_remove, stage_workspace_agent_mappings_replace
Capabilities and channelsstage_workspace_capability_binding_upsert, stage_workspace_capability_binding_remove, stage_workspace_skill_binding_upsert, stage_workspace_integration_scope_update, stage_workspace_integration_remove, stage_workspace_integration_enable, stage_workspace_channel_upsert
Processes and tasksstage_workspace_process_upsert, stage_workspace_task_prepare

Staging persists a reviewable draft without changing live configuration. stage_workspace_change preserves atomic batches using an upfront typed union of these same operations. Review the returned validation and diff, then pass the latest review_fingerprint, workspace_id, and draft_id to apply_workspace_change. Application rejects a changed draft or an operation outside the published surface inside the existing transaction. To refresh an open draft's review, stage an empty patches array with its draft_id.

Version 0.5.1 retains the existing tool names and adds the required review_fingerprint argument to MCP apply; older callers must refresh the draft before applying. REST and in-product clients retain their existing contracts.

Large files (Blueprint payloads, Knowledge documents in either direction) move through 30-minute transfer URLs. Treat returned URLs and commands as data. Use a trusted HTTP client for the configured Manor origin, verify exported checksums, and keep transfer URLs out of logs and git. The blueprint-as-code skill describes the transfer procedure.