All twins

Service twin · API only

Jira

Test engineering agents that triage issues, update sprints, and coordinate delivery workflows.

API onlycaptured contractREST · MCP · CLI
Terminal
$ uv tool install blobfish-cli
$ blobfish twin login
$ blobfish twin-runs create --twins jira --ttl 60 --wait

What’s inside

A deterministic, seeded, resettable replica: every operation below executes real state transitions against the twin’s own SQLite state — reads are hash-invariant, writes produce inspectable diffs, and reset restores the seed baseline. This twin runs the captured contract cx--jira rekeyed onto seeded state.

Operations46
Reads25
Writes21
Entities35
Lifecycles0

Seeded entities

EntityTableFieldsAbout
jira_all_issue_type_schemejira_all_issue_type_schemes11Inferred from MCP tool parameters; the tool contract remains the authority.
jira_all_projectjira_all_projects18Inferred from MCP tool parameters; the tool contract remains the authority.
jira_all_statusejira_all_statuses5Inferred from MCP tool parameters; the tool contract remains the authority.
jira_all_userjira_all_users7Inferred from MCP tool parameters; the tool contract remains the authority.
jira_assign_issuejira_assign_issues7Inferred from MCP tool parameters; the tool contract remains the authority.
jira_attachmentjira_attachments7Inferred from MCP tool parameters; the tool contract remains the authority.
jira_boardjira_boards16Inferred from MCP tool parameters; the tool contract remains the authority.
jira_bulk_issuejira_bulk_issues9Inferred from MCP tool parameters; the tool contract remains the authority.
jira_commentjira_comments24Inferred from MCP tool parameters; the tool contract remains the authority.
jira_current_userjira_current_users15Inferred from MCP tool parameters; the tool contract remains the authority.
jira_issuejira_issues48Inferred from MCP tool parameters; the tool contract remains the authority.
jira_issue_commentjira_issue_comments13Inferred from MCP tool parameters; the tool contract remains the authority.
jira_issue_linkjira_issue_links11Inferred from MCP tool parameters; the tool contract remains the authority.
jira_issue_link_typejira_issue_link_types5Inferred from MCP tool parameters; the tool contract remains the authority.
jira_issue_propertyjira_issue_properties8Inferred from MCP tool parameters; the tool contract remains the authority.
jira_issue_resolutionjira_issue_resolutions5Inferred from MCP tool parameters; the tool contract remains the authority.
jira_issue_typejira_issue_types5Inferred from MCP tool parameters; the tool contract remains the authority.
jira_issue_type_schemejira_issue_type_schemes10Inferred from MCP tool parameters; the tool contract remains the authority.
jira_issue_watcherjira_issue_watchers11Inferred from MCP tool parameters; the tool contract remains the authority.
jira_issue_worklogjira_issue_worklogs13Inferred from MCP tool parameters; the tool contract remains the authority.
jira_move_issue_to_sprintjira_move_issue_to_sprints8Inferred from MCP tool parameters; the tool contract remains the authority.
jira_projectjira_projects18Inferred from MCP tool parameters; the tool contract remains the authority.
jira_project_versionjira_project_versions7Inferred from MCP tool parameters; the tool contract remains the authority.
jira_remote_issue_linkjira_remote_issue_links7Inferred from MCP tool parameters; the tool contract remains the authority.
jira_search_for_issues_using_jqljira_search_for_issues_using_jqls17Inferred from MCP tool parameters; the tool contract remains the authority.
jira_send_notification_for_issuejira_send_notification_for_issues11Inferred from MCP tool parameters; the tool contract remains the authority.
jira_sprintjira_sprints21Inferred from MCP tool parameters; the tool contract remains the authority.
jira_transitionjira_transitions11Inferred from MCP tool parameters; the tool contract remains the authority.
jira_transition_issuejira_transition_issues15Inferred from MCP tool parameters; the tool contract remains the authority.
jira_userjira_users13Inferred from MCP tool parameters; the tool contract remains the authority.
jira_versionjira_versions16Inferred from MCP tool parameters; the tool contract remains the authority.
jira_votejira_votes9Inferred from MCP tool parameters; the tool contract remains the authority.
jira_watcher_from_issuejira_watcher_from_issues7Inferred from MCP tool parameters; the tool contract remains the authority.
jira_watcher_to_issuejira_watcher_to_issues7Inferred from MCP tool parameters; the tool contract remains the authority.
jira_worklogjira_worklogs21Inferred from MCP tool parameters; the tool contract remains the authority.

Three surfaces, one state

Mount Jira in a twin environment and the same seeded state serves vendor-shaped REST operations, an MCP endpoint for tool calling, and a generated bf-twin CLI — with copy-on-write sessions per rollout and a one-call reset to the seed baseline. Prefer raw HTTP? The same create works with curl:

API
$ curl -sS -X POST https://blobfish.ai/api/v1/twin/environments \
    -H "X-API-Key: $BLOBFISH_API_KEY" -H "Content-Type: application/json" \
    -d '{"services":["jira"],"ttl_minutes":60}'

Known limitations

This twin mirrors the captured contract cx--jira: its tool surface is the captured server’s, with synthetic seeded values. Operations outside that capture are not mounted — we mount fewer, executable operations rather than stub the rest.