mirror of
https://github.com/hanzoai/insights.git
synced 2026-10-30 16:15:31 +00:00
Mechanically re-derived: bin/debrand runs over a fresh import of posthog/posthog@fa1a9a60d4 (2026-08-06). The pipeline (.hanzo/workflows), the Dockerfiles and bin/docker* entrypoints, compose files, LLM.md and the squashed initial migration are restored from the shipped tree, same as the previous import. The prune's import-closure guard kept 21 products the new core now imports; dropping them is a refactor now, recorded rather than forced.
601 lines
22 KiB
YAML
601 lines
22 KiB
YAML
# MCP tool definition — tool entries are scaffolded from the OpenAPI schema.
|
|
# The tool list and operation IDs are kept in sync automatically:
|
|
# pnpm --filter=@hanzo/mcp run scaffold-yaml -- --sync-all
|
|
#
|
|
# To enable a tool, set enabled: true and add required scopes + annotations.
|
|
# All other fields (title, description, enrich_url, etc.) are yours to configure.
|
|
category: Tasks
|
|
feature: tasks
|
|
url_prefix: /tasks
|
|
ui_apps:
|
|
loops-review:
|
|
type: custom
|
|
app_name: Insights Loop Review
|
|
description: Review card for a loop before creation, with a Create loop action.
|
|
tools:
|
|
channel-create:
|
|
operation: task_channels_create
|
|
enabled: true
|
|
scopes:
|
|
- task:write
|
|
annotations:
|
|
readOnly: false
|
|
destructive: false
|
|
idempotent: true
|
|
title: Resolve or create a channel
|
|
description: >
|
|
Resolve-or-create a public channel by name (normalized to lowercase-dashed). Idempotent: returns the
|
|
existing channel when one with the name already exists. Use channel-list first when the request names an
|
|
existing channel.
|
|
channel-instructions-retrieve:
|
|
operation: task_channels_instructions_retrieve
|
|
enabled: true
|
|
scopes:
|
|
- task:read
|
|
annotations:
|
|
readOnly: true
|
|
destructive: false
|
|
idempotent: true
|
|
title: Read channel instructions
|
|
description: >
|
|
Read a channel's CONTEXT.md instructions (versioned markdown describing the channel's context). Returns the
|
|
latest `content` and its `version` — pass that version as `base_version` when publishing an update. A
|
|
channel with no instructions yet reads as a blank version 0.
|
|
param_overrides:
|
|
id:
|
|
description: ID of the channel whose instructions to read.
|
|
channel-list:
|
|
operation: task_channels_list
|
|
enabled: true
|
|
scopes:
|
|
- task:read
|
|
annotations:
|
|
readOnly: true
|
|
destructive: false
|
|
idempotent: true
|
|
title: List channels
|
|
description: >
|
|
List the project's channels (public channels plus the requester's personal #me channel). Use this to resolve
|
|
a channel id from its name before creating or listing canvases or reading instructions.
|
|
channel-retrieve:
|
|
operation: task_channels_retrieve
|
|
enabled: true
|
|
scopes:
|
|
- task:read
|
|
annotations:
|
|
readOnly: true
|
|
destructive: false
|
|
idempotent: true
|
|
title: Get a channel
|
|
description: One channel by id, including its name and type.
|
|
param_overrides:
|
|
id:
|
|
description: ID of the channel to read.
|
|
code-invites-check-access-retrieve:
|
|
operation: code_invites_check_access_retrieve
|
|
enabled: false
|
|
code-invites-redeem-create:
|
|
operation: code_invites_redeem_create
|
|
enabled: false
|
|
loops-create:
|
|
operation: loops_create
|
|
enabled: true
|
|
scopes:
|
|
- loop:write
|
|
annotations:
|
|
readOnly: false
|
|
destructive: false
|
|
idempotent: false
|
|
title: Create loop
|
|
description: >
|
|
Create a new loop: a named, cloud-executed agent automation that runs on a schedule, a GitHub event, or an
|
|
authenticated API call. Set `instructions` (the prompt delivered to the agent on every run),
|
|
`runtime_adapter`/`model`/`reasoning_effort`, `repositories` (at most 1, may be empty for a connector-only
|
|
loop), `visibility` (`personal` or `team`), `behaviors` (PR creation, CI watch, auto-fix) and `triggers`.
|
|
feature_flag: loops
|
|
confirmed_action:
|
|
message: >
|
|
About to create the loop '{name}', a persistent automation that will run unattended with your GitHub and
|
|
connector access whenever its triggers fire. Reply 'confirm' to create it.
|
|
action_label: create loop
|
|
loops-destroy:
|
|
operation: loops_destroy
|
|
enabled: true
|
|
scopes:
|
|
- loop:write
|
|
annotations:
|
|
readOnly: false
|
|
destructive: true
|
|
idempotent: true
|
|
title: Delete loop
|
|
description: >
|
|
Soft-delete a loop and pause every trigger's schedule so it stops firing. Only the loop owner or a project
|
|
admin can delete a loop.
|
|
feature_flag: loops
|
|
loops-list:
|
|
operation: loops_list
|
|
enabled: true
|
|
scopes:
|
|
- loop:read
|
|
annotations:
|
|
readOnly: true
|
|
destructive: false
|
|
idempotent: true
|
|
list: true
|
|
title: List loops
|
|
description: >
|
|
List loops visible to the current user in the project: personal loops the user owns plus every team-visible
|
|
loop. Returns loop config, trigger summaries, and run bookkeeping (`last_run_at`, `last_run_status`,
|
|
`consecutive_failures`).
|
|
feature_flag: loops
|
|
loops-partial-update:
|
|
operation: loops_partial_update
|
|
enabled: true
|
|
scopes:
|
|
- loop:write
|
|
annotations:
|
|
readOnly: false
|
|
destructive: false
|
|
idempotent: false
|
|
title: Update loop
|
|
description: >
|
|
Update an existing loop's config. On a team loop, identity-bearing fields (`instructions`, `repositories`,
|
|
`connectors`, `behaviors`, `triggers`) are editable only by the current owner: editing them as another
|
|
member takes ownership and re-validates repositories and connectors against that member's own access.
|
|
Editing a loop never affects its in-flight or queued runs; every run snapshots its config at fire time.
|
|
feature_flag: loops
|
|
loops-preview-create:
|
|
operation: loops_preview_create
|
|
enabled: true
|
|
scopes:
|
|
- loop:read
|
|
annotations:
|
|
readOnly: true
|
|
destructive: false
|
|
idempotent: true
|
|
title: Preview a loop fire
|
|
description: >
|
|
Dry-run a loop: render the assembled instructions and trigger context for a sample payload (or a synthetic
|
|
schedule fire when omitted) without creating a task, run, or any other side effect. Use it to check a loop's
|
|
prompt before enabling it.
|
|
feature_flag: loops
|
|
loops-retrieve:
|
|
operation: loops_retrieve
|
|
enabled: true
|
|
scopes:
|
|
- loop:read
|
|
annotations:
|
|
readOnly: true
|
|
destructive: false
|
|
idempotent: true
|
|
enrich_url: '{id}'
|
|
title: Get loop
|
|
description: >
|
|
Get a specific loop by ID, including its full config (instructions, model, repositories, triggers,
|
|
behaviors, connectors, notifications) and run bookkeeping.
|
|
feature_flag: loops
|
|
loops-run-create:
|
|
operation: loops_run_create
|
|
enabled: true
|
|
scopes:
|
|
- loop:write
|
|
annotations:
|
|
readOnly: false
|
|
destructive: false
|
|
idempotent: false
|
|
title: Manually run a loop
|
|
description: >
|
|
Manually fire a loop right now, outside its configured triggers. Creates a fresh task run using the loop's
|
|
current config snapshot and returns it. Subject to the same usage-gate, overlap policy and rate limits as
|
|
trigger-fired runs.
|
|
feature_flag: loops
|
|
loops-runs-retrieve:
|
|
operation: loops_runs_retrieve
|
|
enabled: true
|
|
scopes:
|
|
- loop:read
|
|
annotations:
|
|
readOnly: true
|
|
destructive: false
|
|
idempotent: true
|
|
enrich_url: '{id}/runs'
|
|
list: true
|
|
title: List loop runs
|
|
description: >
|
|
List a loop's run history, newest first, cursor-paginated. Each entry carries the run's status, branch,
|
|
error message and output (including any PR URL), so an agent can check whether a loop's runs succeeded and
|
|
what they produced.
|
|
feature_flag: loops
|
|
loops-skill-bundles-update:
|
|
operation: loops_skill_bundles_update
|
|
enabled: false
|
|
loops-trigger-create:
|
|
operation: loops_trigger_create
|
|
enabled: false
|
|
sandbox-create:
|
|
operation: sandbox_create
|
|
enabled: false
|
|
sandbox-custom-images-build-create:
|
|
operation: sandbox_custom_images_build_create
|
|
enabled: false
|
|
sandbox-custom-images-builder-task-create:
|
|
operation: sandbox_custom_images_builder_task_create
|
|
enabled: false
|
|
sandbox-custom-images-create:
|
|
operation: sandbox_custom_images_create
|
|
enabled: false
|
|
sandbox-custom-images-destroy:
|
|
operation: sandbox_custom_images_destroy
|
|
enabled: false
|
|
sandbox-custom-images-list:
|
|
operation: sandbox_custom_images_list
|
|
enabled: false
|
|
sandbox-custom-images-partial-update:
|
|
operation: sandbox_custom_images_partial_update
|
|
enabled: false
|
|
sandbox-custom-images-retrieve:
|
|
operation: sandbox_custom_images_retrieve
|
|
enabled: false
|
|
sandbox-destroy:
|
|
operation: sandbox_destroy
|
|
enabled: false
|
|
sandbox-list:
|
|
operation: sandbox_list
|
|
enabled: false
|
|
sandbox-partial-update:
|
|
operation: sandbox_partial_update
|
|
enabled: false
|
|
sandbox-retrieve:
|
|
operation: sandbox_retrieve
|
|
enabled: false
|
|
task-activity-list:
|
|
operation: task_activity_list
|
|
enabled: false
|
|
task-activity-mark-read-create:
|
|
operation: task_activity_mark_read_create
|
|
enabled: false
|
|
task-automations-create:
|
|
operation: task_automations_create
|
|
enabled: false
|
|
task-automations-destroy:
|
|
operation: task_automations_destroy
|
|
enabled: false
|
|
task-automations-list:
|
|
operation: task_automations_list
|
|
enabled: false
|
|
task-automations-partial-update:
|
|
operation: task_automations_partial_update
|
|
enabled: false
|
|
task-automations-retrieve:
|
|
operation: task_automations_retrieve
|
|
enabled: false
|
|
task-automations-run-create:
|
|
operation: task_automations_run_create
|
|
enabled: false
|
|
task-channels-context-generation-retrieve:
|
|
operation: task_channels_context_generation_retrieve
|
|
enabled: false
|
|
task-channels-context-generation-update:
|
|
operation: task_channels_context_generation_update
|
|
enabled: false
|
|
task-channels-destroy:
|
|
operation: task_channels_destroy
|
|
enabled: false
|
|
task-channels-feed-create:
|
|
operation: task_channels_feed_create
|
|
enabled: false
|
|
task-channels-feed-list:
|
|
operation: task_channels_feed_list
|
|
enabled: false
|
|
task-channels-instructions-destroy:
|
|
operation: task_channels_instructions_destroy
|
|
enabled: false
|
|
task-channels-instructions-partial-update:
|
|
operation: task_channels_instructions_partial_update
|
|
enabled: false
|
|
task-channels-instructions-update:
|
|
operation: task_channels_instructions_update
|
|
enabled: false
|
|
task-channels-instructions-versions-retrieve:
|
|
operation: task_channels_instructions_versions_retrieve
|
|
enabled: false
|
|
task-channels-partial-update:
|
|
operation: task_channels_partial_update
|
|
enabled: false
|
|
task-channels-star-create:
|
|
operation: task_channels_star_create
|
|
enabled: false
|
|
task-mentions-list:
|
|
operation: task_mentions_list
|
|
enabled: false
|
|
tasks-active-wizard-run-retrieve:
|
|
operation: tasks_active_wizard_run_retrieve
|
|
enabled: false
|
|
tasks-create:
|
|
operation: tasks_create
|
|
enabled: true
|
|
scopes:
|
|
- task:write
|
|
annotations:
|
|
readOnly: false
|
|
destructive: false
|
|
idempotent: false
|
|
enrich_url: '{id}'
|
|
title: Create task
|
|
description: >
|
|
Create an agent task in the current project — a unit of work an AI agent picks up and actions, such as
|
|
investigating an inbox report, fixing an error, or opening a pull request. `description` is the prompt
|
|
handed to the agent, so make it specific and actionable. Pass `repository` in `organization/repo` format for
|
|
code tasks so the agent knows where to work; omit it for investigation-only tasks. This creates the task
|
|
record only — it does not start the agent. Returns the created task including its URL; open that URL to
|
|
start the run. Requires the calling token's organization to have Tasks access enabled.
|
|
include_params:
|
|
- title
|
|
- description
|
|
- repository
|
|
param_overrides:
|
|
description:
|
|
description: >
|
|
The task for the agent to carry out, written as a direct prompt (e.g. "Investigate the spike in
|
|
$exception events on the checkout page and open a PR with a fix"). Passed verbatim to the agent as
|
|
its instructions, so be specific.
|
|
required: true
|
|
feature_flag: tasks
|
|
response:
|
|
include:
|
|
- id
|
|
- task_number
|
|
- title
|
|
- description
|
|
- origin_product
|
|
- repository
|
|
- internal
|
|
- created_at
|
|
- updated_at
|
|
tasks-destroy:
|
|
operation: tasks_destroy
|
|
enabled: false
|
|
tasks-list:
|
|
operation: tasks_list
|
|
enabled: true
|
|
scopes:
|
|
- task:read
|
|
annotations:
|
|
readOnly: true
|
|
destructive: false
|
|
idempotent: true
|
|
enrich_url: '{id}'
|
|
list: true
|
|
title: List tasks
|
|
description: >
|
|
List agent tasks in the current project. Supports filtering by `origin_product`, `stage`, `organization`,
|
|
`repository`, `created_by`, and `internal`. Returns lightweight task metadata only — call tasks-retrieve for
|
|
the full task including its latest run, or tasks-runs-list for run history. Requires the calling token's
|
|
organization to have Tasks access enabled.
|
|
feature_flag: tasks
|
|
response:
|
|
include:
|
|
- id
|
|
- task_number
|
|
- title
|
|
- description
|
|
- origin_product
|
|
- repository
|
|
- internal
|
|
- created_at
|
|
- updated_at
|
|
tasks-partial-update:
|
|
operation: tasks_partial_update
|
|
enabled: false
|
|
tasks-pin-create:
|
|
operation: tasks_pin_create
|
|
enabled: false
|
|
tasks-pinned-retrieve:
|
|
operation: tasks_pinned_retrieve
|
|
enabled: false
|
|
tasks-presence-create:
|
|
operation: tasks_presence_create
|
|
enabled: false
|
|
tasks-presence-destroy:
|
|
operation: tasks_presence_destroy
|
|
enabled: false
|
|
tasks-repositories-retrieve:
|
|
operation: tasks_repositories_retrieve
|
|
enabled: false
|
|
tasks-repository-readiness-retrieve:
|
|
operation: tasks_repository_readiness_retrieve
|
|
enabled: false
|
|
tasks-retrieve:
|
|
operation: tasks_retrieve
|
|
enabled: true
|
|
scopes:
|
|
- task:read
|
|
annotations:
|
|
readOnly: true
|
|
destructive: false
|
|
idempotent: true
|
|
enrich_url: '{id}'
|
|
title: Get task
|
|
description: >
|
|
Get a specific task by ID, including its description, repository, origin product, current stage, and latest
|
|
run summary. Sandbox connection credentials and the presigned log URL are omitted from the embedded
|
|
`latest_run`. Use tasks-runs-list or tasks-runs-retrieve to inspect past executions.
|
|
feature_flag: tasks
|
|
response:
|
|
exclude:
|
|
- latest_run.log_url
|
|
- latest_run.state.sandbox_connect_token
|
|
- latest_run.state.sandbox_url
|
|
tasks-run-create:
|
|
operation: tasks_run_create
|
|
enabled: false
|
|
tasks-runs-append-log-create:
|
|
operation: tasks_runs_append_log_create
|
|
enabled: false
|
|
tasks-runs-artifacts-create:
|
|
operation: tasks_runs_artifacts_create
|
|
enabled: false
|
|
tasks-runs-artifacts-download-create:
|
|
operation: tasks_runs_artifacts_download_create
|
|
enabled: false
|
|
tasks-runs-artifacts-finalize-upload-create:
|
|
operation: tasks_runs_artifacts_finalize_upload_create
|
|
enabled: false
|
|
tasks-runs-artifacts-prepare-upload-create:
|
|
operation: tasks_runs_artifacts_prepare_upload_create
|
|
enabled: false
|
|
tasks-runs-artifacts-presign-create:
|
|
operation: tasks_runs_artifacts_presign_create
|
|
enabled: false
|
|
tasks-runs-cancel-create:
|
|
operation: tasks_runs_cancel_create
|
|
enabled: false
|
|
tasks-runs-command-create:
|
|
operation: tasks_runs_command_create
|
|
enabled: false
|
|
tasks-runs-connection-token-retrieve:
|
|
operation: tasks_runs_connection_token_retrieve
|
|
enabled: false
|
|
tasks-runs-create:
|
|
operation: tasks_runs_create
|
|
enabled: false
|
|
tasks-runs-list:
|
|
operation: tasks_runs_list
|
|
enabled: true
|
|
scopes:
|
|
- task:read
|
|
annotations:
|
|
readOnly: true
|
|
destructive: false
|
|
idempotent: true
|
|
list: true
|
|
title: List task runs
|
|
description: >
|
|
List all runs for a specific task. Returns lightweight run metadata only — call tasks-runs-retrieve for full
|
|
run detail including state, output, and artifacts.
|
|
feature_flag: tasks
|
|
response:
|
|
include:
|
|
- id
|
|
- task
|
|
- stage
|
|
- branch
|
|
- status
|
|
- environment
|
|
- error_message
|
|
- state.sandbox_environment_id
|
|
- created_at
|
|
- updated_at
|
|
- completed_at
|
|
tasks-runs-living-artifacts-chart:
|
|
operation: tasks_runs_living_artifacts_chart
|
|
enabled: false
|
|
tasks-runs-living-artifacts-create:
|
|
operation: tasks_runs_living_artifacts_create
|
|
enabled: false
|
|
tasks-runs-living-artifacts-edit:
|
|
operation: tasks_runs_living_artifacts_edit
|
|
enabled: false
|
|
tasks-runs-living-artifacts-list:
|
|
operation: tasks_runs_living_artifacts_list
|
|
enabled: false
|
|
tasks-runs-living-artifacts-open:
|
|
operation: tasks_runs_living_artifacts_open
|
|
enabled: false
|
|
tasks-runs-partial-update:
|
|
operation: tasks_runs_partial_update
|
|
enabled: false
|
|
tasks-runs-relay-message-create:
|
|
operation: tasks_runs_relay_message_create
|
|
enabled: false
|
|
tasks-runs-resume-in-cloud-create:
|
|
operation: tasks_runs_resume_in_cloud_create
|
|
enabled: false
|
|
tasks-runs-retrieve:
|
|
operation: tasks_runs_retrieve
|
|
enabled: true
|
|
scopes:
|
|
- task:read
|
|
annotations:
|
|
readOnly: true
|
|
destructive: false
|
|
idempotent: true
|
|
title: Get task run
|
|
description: >
|
|
Get full details for a specific task run including status, stage, environment, branch, artifacts summary,
|
|
state, error message, and timestamps. Sandbox connection credentials (`state.sandbox_connect_token`,
|
|
`state.sandbox_url`) and the presigned `log_url` are omitted from the response.
|
|
feature_flag: tasks
|
|
response:
|
|
exclude:
|
|
- log_url
|
|
- state.sandbox_connect_token
|
|
- state.sandbox_url
|
|
tasks-runs-session-logs-retrieve:
|
|
operation: tasks_runs_session_logs_retrieve
|
|
enabled: true
|
|
scopes:
|
|
- task:read
|
|
annotations:
|
|
readOnly: true
|
|
destructive: false
|
|
idempotent: true
|
|
title: Get task run session logs
|
|
description: >
|
|
Fetch session log events emitted by the agent for a specific run. Supports filtering by `event_types`,
|
|
`exclude_types`, pagination with `limit`/`offset`, and `after` cursor. Use this instead of the streaming
|
|
endpoint when invoking from an MCP client.
|
|
param_overrides:
|
|
limit:
|
|
description: Maximum number of entries to return (default 100, max 5000)
|
|
default: 100
|
|
feature_flag: tasks
|
|
tasks-runs-set-output-partial-update:
|
|
operation: tasks_runs_set_output_partial_update
|
|
enabled: false
|
|
tasks-runs-start-create:
|
|
operation: tasks_runs_start_create
|
|
enabled: false
|
|
tasks-runs-stream-retrieve:
|
|
operation: tasks_runs_stream_retrieve
|
|
enabled: false
|
|
tasks-runs-stream-token-retrieve:
|
|
operation: tasks_runs_stream_token_retrieve
|
|
enabled: false
|
|
tasks-runs-task-session-retrieve:
|
|
operation: tasks_runs_task_session_retrieve
|
|
enabled: false
|
|
tasks-runs-task-session-sync-create:
|
|
operation: tasks_runs_task_session_sync_create
|
|
enabled: false
|
|
tasks-slack-thread-context-retrieve:
|
|
operation: tasks_slack_thread_context_retrieve
|
|
enabled: false
|
|
tasks-staged-artifacts-finalize-upload-create:
|
|
operation: tasks_staged_artifacts_finalize_upload_create
|
|
enabled: false
|
|
tasks-staged-artifacts-prepare-upload-create:
|
|
operation: tasks_staged_artifacts_prepare_upload_create
|
|
enabled: false
|
|
tasks-summaries-create:
|
|
operation: tasks_summaries_create
|
|
enabled: false
|
|
tasks-thread-messages-create:
|
|
operation: tasks_thread_messages_create
|
|
enabled: false
|
|
tasks-thread-messages-destroy:
|
|
operation: tasks_thread_messages_destroy
|
|
enabled: false
|
|
tasks-thread-messages-list:
|
|
operation: tasks_thread_messages_list
|
|
enabled: false
|
|
tasks-thread-messages-send-to-agent-create:
|
|
operation: tasks_thread_messages_send_to_agent_create
|
|
enabled: false
|
|
tasks-update:
|
|
operation: tasks_update
|
|
enabled: false
|
|
tasks-warm-create:
|
|
operation: tasks_warm_create
|
|
enabled: false
|