Service twin · API + UI
GitHub
Test coding agents that manage issues, review pull requests, and coordinate repository workflows.
API + UIspec-groundedREST · MCP · CLI
Terminal
$ uv tool install blobfish-cli
$ blobfish twin login
$ blobfish twin-runs create --twins github --ttl 60 --waitWhat’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.
Seeded entities
| Entity | Table | Fields | About |
|---|---|---|---|
| access | accesses | 5 | Inferred from operation parameters (spec has no named schema). |
| actions_artifact_and_log_retention_response | actions_artifact_and_log_retention_responses | 3 | |
| actions_cache_list | actions_cache_lists | 3 | Repository actions caches |
| actions_cache_retention_limit_for_enterprise | actions_cache_retention_limit_for_enterprises | 2 | GitHub Actions cache retention policy for an enterprise. |
| actions_cache_retention_limit_for_organization | actions_cache_retention_limit_for_organizations | 2 | GitHub Actions cache retention policy for an organization. |
| actions_cache_retention_limit_for_repository | actions_cache_retention_limit_for_repositories | 2 | GitHub Actions cache retention policy for a repository. |
| actions_cache_storage_limit_for_enterprise | actions_cache_storage_limit_for_enterprises | 2 | GitHub Actions cache storage policy for an enterprise. |
| actions_cache_storage_limit_for_organization | actions_cache_storage_limit_for_organizations | 2 | GitHub Actions cache storage policy for an organization. |
| actions_cache_storage_limit_for_repository | actions_cache_storage_limit_for_repositories | 2 | GitHub Actions cache storage policy for a repository. |
| actions_cache_usage_by_repository | actions_cache_usage_by_repositories | 4 | GitHub Actions Cache Usage by repository. |
| actions_cache_usage_org_enterprise | actions_cache_usage_org_enterprises | 3 | |
| actions_fork_pr_contributor_approval | actions_fork_pr_contributor_approvals | 2 | |
| actions_fork_pr_workflows_private_repo | actions_fork_pr_workflows_private_repos | 5 | |
| actions_get_default_workflow_permission | actions_get_default_workflow_permissions | 3 | |
| actions_hosted_runner | actions_hosted_runners | 12 | A Github-hosted hosted runner. |
| actions_hosted_runner_custom_image | actions_hosted_runner_custom_images | 8 | Provides details of a custom runner image |
| actions_hosted_runner_custom_image_version | actions_hosted_runner_custom_image_versions | 6 | Provides details of a hosted runner custom image version |
| actions_hosted_runner_limit | actions_hosted_runner_limits | 2 | |
| actions_organization_permission | actions_organization_permissions | 6 | |
| actions_public_key | actions_public_keys | 6 | The public key used for setting Actions Secrets. |
| actions_repository_permission | actions_repository_permissions | 5 | |
| actions_secret | actions_secrets | 4 | Set secrets for GitHub Actions. |
| actions_variable | actions_variables | 5 | |
| actions_workflow_access_to_repository | actions_workflow_access_to_repositories | 2 | |
| activity | activities | 8 | Activity |
| api_insights_summary_stat | api_insights_summary_stats | 3 | API Insights usage summary stats for an organization |
| api_overview | api_overviews | 18 | Api Overview |
| app | apps | 2 | Inferred from operation parameters (spec has no named schema). |
| approve | approves | 2 | Inferred from operation parameters (spec has no named schema). |
| archive | archives | 2 | Inferred from operation parameters (spec has no named schema). |
| artifact | artifacts | 12 | An artifact |
| artifact_and_log_retention | artifact_and_log_retentions | 3 | Inferred from operation parameters (spec has no named schema). |
| asset | assets | 2 | Inferred from operation parameters (spec has no named schema). |
| assignee | assignees | 6 | Inferred from operation parameters (spec has no named schema). |
| attach | attaches | 4 | Inferred from operation parameters (spec has no named schema). |
| attempt | attempts | 2 | Inferred from operation parameters (spec has no named schema). |
| attestation | attestations | 8 | Inferred from operation parameters (spec has no named schema). |
| authentication_token | authentication_tokens | 7 | Authentication Token |
| authorization | authorizations | 15 | The authorization for an OAuth app, GitHub App, or a Personal Access Token. |
| autolink | autolinks | 5 | An autolink reference. |
| automated_security_fix | automated_security_fixes | 2 | Inferred from operation parameters (spec has no named schema). |
| base_gist | base_gists | 21 | Base Gist |
| billing_premium_request_usage_report_org | billing_premium_request_usage_report_orgs | 7 | |
| billing_premium_request_usage_report_user | billing_premium_request_usage_report_users | 6 | |
| billing_usage_report | billing_usage_reports | 2 | |
| billing_usage_report_user | billing_usage_report_users | 2 | |
| billing_usage_summary_report_org | billing_usage_summary_report_orgs | 7 | |
| billing_usage_summary_report_user | billing_usage_summary_report_users | 7 | |
| blob | blobs | 7 | Blob |
| block | blocks | 4 | Inferred from operation parameters (spec has no named schema). |
| branch | branches | 5 | Inferred from operation parameters (spec has no named schema). |
| branch_protection | branch_protections | 17 | Branch Protection |
| branch_restriction_policy | branch_restriction_policies | 8 | Branch Restriction Policy |
| branch_short | branch_shorts | 4 | Branch Short |
| branch_with_protection | branch_with_protections | 9 | Branch With Protection |
| budget | budgets | 9 | Inferred from operation parameters (spec has no named schema). |
| bulk_list | bulk_lists | 4 | Inferred from operation parameters (spec has no named schema). |
| cache | caches | 2 | Inferred from operation parameters (spec has no named schema). |
| campaign | campaigns | 2 | Inferred from operation parameters (spec has no named schema). |
| campaign_summary | campaign_summaries | 14 | The campaign metadata and alert stats. |
| cancel | cancels | 2 | Inferred from operation parameters (spec has no named schema). |
| check_annotation | check_annotations | 11 | Check Annotation |
| check_automated_security_fix | check_automated_security_fixes | 3 | Check Dependabot security updates |
| check_immutable_release | check_immutable_releases | 3 | Check immutable releases |
| check_run | check_runs | 17 | A check performed on the code of a given code change |
| check_suite | check_suites | 19 | A suite of checks performed on the code of a given code change |
| check_suite_preference | check_suite_preferences | 3 | Check suite configuration preferences for a repository. |
| classroom | classrooms | 5 | A GitHub Classroom classroom |
| classroom_accepted_assignment | classroom_accepted_assignments | 8 | A GitHub Classroom accepted assignment |
| classroom_assignment | classroom_assignments | 19 | A GitHub Classroom assignment |
| classroom_assignment_grade | classroom_assignment_grades | 12 | Grade for a student or groups GitHub Classroom assignment |
| clone_traffic | clone_traffics | 4 | Clone Traffic |
| cluster | clusters | 5 | Inferred from operation parameters (spec has no named schema). |
| code | codes | 2 | Inferred from operation parameters (spec has no named schema). |
| code_frequency | code_frequencies | 2 | Inferred from operation parameters (spec has no named schema). |
| code_of_conduct | code_of_conducts | 6 | Code Of Conduct |
| code_scanning_alert | code_scanning_alerts | 18 | |
| code_scanning_alert_instance | code_scanning_alert_instances | 11 | |
| code_scanning_alert_item | code_scanning_alert_items | 18 | |
| code_scanning_analysi | code_scanning_analysis | 15 | |
| code_scanning_analysis_deletion | code_scanning_analysis_deletions | 3 | Successful deletion of a code scanning analysis |
| code_scanning_autofix | code_scanning_autofixes | 4 | |
| code_scanning_autofix_commits_response | code_scanning_autofix_commits_responses | 3 | |
| code_scanning_codeql_database | code_scanning_codeql_databases | 10 | A CodeQL database. |
| code_scanning_default_setup | code_scanning_default_setups | 9 | Configuration for code scanning default setup. |
| code_scanning_organization_alert_item | code_scanning_organization_alert_items | 19 | |
| code_scanning_sarifs_receipt | code_scanning_sarifs_receipts | 2 | |
| code_scanning_sarifs_statu | code_scanning_sarifs_status | 4 | |
| code_scanning_variant_analysi | code_scanning_variant_analysis | 13 | A run of a CodeQL query against one or more repositories. |
| code_scanning_variant_analysis_repo_task | code_scanning_variant_analysis_repo_tasks | 9 | |
| code_security_configuration | code_security_configurations | 28 | A code security configuration |
| code_security_configuration_for_repository | code_security_configuration_for_repositories | 3 | Code security configuration associated with a repository and attachment status |
| code_security_configuration_repository | code_security_configuration_repositories | 3 | Repositories associated with a code security configuration and attachment status |
| codeowners_error | codeowners_errors | 2 | A list of errors found in a repo's CODEOWNERS file |
| codespace | codespaces | 32 | A codespace. |
| codespace_export_detail | codespace_export_details | 7 | An export of a codespace. Also, latest export details for a codespace can be fetched with id = latest |
| codespace_with_full_repository | codespace_with_full_repositories | 31 | A codespace. |
| codespaces_org_secret | codespaces_org_secrets | 6 | Secrets for a GitHub Codespace. |
| codespaces_permissions_check_for_devcontainer | codespaces_permissions_check_for_devcontainers | 2 | Permission check result for a given devcontainer config. |
| codespaces_public_key | codespaces_public_keys | 6 | The public key used for setting Codespaces secrets. |
| codespaces_secret | codespaces_secrets | 6 | Secrets for a GitHub Codespace. |
| codespaces_user_public_key | codespaces_user_public_keys | 2 | The public key used for setting user Codespaces' Secrets. |
| collaborator | collaborators | 23 | Collaborator |
| combined_commit_statu | combined_commit_status | 8 | Combined Commit Status |
| comment | comments | 2 | Inferred from operation parameters (spec has no named schema). |
| commit | commits | 11 | Commit |
| commit_activity | commit_activities | 4 | Commit Activity |
| commit_comment | commit_comments | 14 | Commit Comment |
| commit_comparison | commit_comparisons | 14 | Commit Comparison |
| community_profile | community_profiles | 7 | Community Profile |
| compare | compares | 5 | Inferred from operation parameters (spec has no named schema). |
| configuration | configurations | 2 | Inferred from operation parameters (spec has no named schema). |
| content | contents | 5 | Inferred from operation parameters (spec has no named schema). |
| content_file | content_files | 15 | Content File |
| content_traffic | content_traffics | 5 | Content Traffic |
| context | contexts | 2 | Inferred from operation parameters (spec has no named schema). |
| contributor | contributors | 22 | Contributor |
| contributor_activity | contributor_activities | 4 | Contributor Activity |
| conversion | conversions | 2 | Inferred from operation parameters (spec has no named schema). |
| copilot_organization_detail | copilot_organization_details | 8 | Information about the seat breakdown and policies set for an organization with a Copilot Business or Copilot Enterprise subscription. |
| copilot_seat_detail | copilot_seat_details | 11 | Information about a Copilot Business seat assignment for a user, team, or organization. |
| copilot_usage_metrics_day | copilot_usage_metrics_days | 8 | Copilot usage metrics for a given day. |
| custom | customs | 2 | Inferred from operation parameters (spec has no named schema). |
| custom_property | custom_properties | 10 | Custom property defined on an organization |
| custom_property_value | custom_property_values | 3 | Custom property name and associated value |
| cve | cves | 2 | Inferred from operation parameters (spec has no named schema). |
| database | databases | 2 | Inferred from operation parameters (spec has no named schema). |
| default | defaults | 3 | Inferred from operation parameters (spec has no named schema). |
| default_level | default_levels | 3 | Inferred from operation parameters (spec has no named schema). |
| default_setup | default_setups | 8 | Inferred from operation parameters (spec has no named schema). |
| delete_budget | delete_budgets | 2 | |
| delete_request | delete_requests | 2 | Inferred from operation parameters (spec has no named schema). |
| dependabot_alert | dependabot_alerts | 17 | A Dependabot alert. |
| dependabot_alert_with_repository | dependabot_alert_with_repositories | 18 | A Dependabot alert. |
| dependabot_public_key | dependabot_public_keys | 2 | The public key used for setting Dependabot Secrets. |
| dependabot_repository_access_detail | dependabot_repository_access_details | 3 | Information about repositories that Dependabot is able to access in an organization |
| dependabot_secret | dependabot_secrets | 4 | Set secrets for Dependabot. |
| dependency_graph_spdx_sbom | dependency_graph_spdx_sboms | 2 | A schema for the SPDX JSON format returned by the Dependency Graph. |
| deploy_key | deploy_keys | 10 | An SSH key granting access to a single repository. |
| deployment | deployments | 18 | A request for a specific ref(branch,sha,tag) to be deployed |
| deployment_branch_policy | deployment_branch_policies | 4 | Details of a deployment branch or tag policy. |
| deployment_protection_rule | deployment_protection_rules | 4 | Deployment protection rule |
| deployment_record | deployment_records | 13 | Inferred from operation parameters (spec has no named schema). |
| deployment_statu | deployment_status | 15 | The status of a deployment. |
| detach | detaches | 3 | Inferred from operation parameters (spec has no named schema). |
| devcontainer | devcontainers | 2 | Inferred from operation parameters (spec has no named schema). |
| diff_entry | diff_entries | 12 | Diff Entry |
| digest | digests | 2 | Inferred from operation parameters (spec has no named schema). |
| disable | disables | 2 | Inferred from operation parameters (spec has no named schema). |
| discussion | discussions | 2 | Inferred from operation parameters (spec has no named schema). |
| dispatch | dispatches | 6 | Inferred from operation parameters (spec has no named schema). |
emails | 5 | ||
| emoji | emojis | 2 | Inferred from operation parameters (spec has no named schema). |
| enable | enables | 2 | Inferred from operation parameters (spec has no named schema). |
| enforce_admin | enforce_admins | 2 | Inferred from operation parameters (spec has no named schema). |
| enterprise_team | enterprise_teams | 13 | Group of enterprise owners and/or members |
| environment | environments | 9 | Details of a deployment environment |
| environment_approval | environment_approvals | 5 | An entry in the reviews log for environment deployments |
| event | events | 8 | Event |
| feed | feeds | 12 | Feed |
| file_commit | file_commits | 3 | File Commit |
| following | followings | 4 | Inferred from operation parameters (spec has no named schema). |
| force_cancel | force_cancels | 2 | Inferred from operation parameters (spec has no named schema). |
| fork_pr_contributor_approval | fork_pr_contributor_approvals | 3 | Inferred from operation parameters (spec has no named schema). |
| fork_pr_workflows_private_repo | fork_pr_workflows_private_repos | 6 | Inferred from operation parameters (spec has no named schema). |
| full_repository | full_repositories | 48 | Full Repository |
| generate_jitconfig | generate_jitconfigs | 6 | Inferred from operation parameters (spec has no named schema). |
| get_all_budget | get_all_budgets | 3 | |
| get_budget | get_budgets | 8 | |
| gist | gists | 2 | Inferred from operation parameters (spec has no named schema). |
| gist_comment | gist_comments | 8 | A comment made to a gist. |
| gist_commit | gist_commits | 6 | Gist Commit |
| gist_simple | gist_simples | 22 | Gist Simple |
| git_commit | git_commits | 10 | Low-level Git commit operations within a repository |
| git_ref | git_refs | 4 | Git references within a repository |
| git_tag | git_tags | 8 | Metadata for a Git tag |
| git_tree | git_trees | 5 | The hierarchy between files in a Git repository. |
| github_owned | github_owneds | 2 | Inferred from operation parameters (spec has no named schema). |
| gitignore_template | gitignore_templates | 3 | Gitignore Template |
| global_advisory | global_advisories | 23 | A GitHub Security Advisory. |
| gpg_key | gpg_keys | 15 | A unique encryption key |
| grant | grants | 3 | Inferred from operation parameters (spec has no named schema). |
| history | histories | 7 | Inferred from operation parameters (spec has no named schema). |
| hook | hooks | 13 | Webhooks for repositories. |
| hook_delivery | hook_deliveries | 15 | Delivery made by a webhook. |
| hook_delivery_item | hook_delivery_items | 12 | Delivery made by a webhook, without request and response information. |
| hosted_runner | hosted_runners | 2 | Inferred from operation parameters (spec has no named schema). |
| hovercard | hovercards | 2 | Hovercard |
| immutable_release | immutable_releases | 4 | Inferred from operation parameters (spec has no named schema). |
| immutable_releases_organization_setting | immutable_releases_organization_settings | 3 | Check immutable releases settings for an organization. |
| import | imports | 24 | A repository import from an external source. |
| installation | installations | 21 | Installation |
| installation_token | installation_tokens | 9 | Authentication token for a GitHub App installed on a user or org. |
| integration | integrations | 14 | GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specifi… |
| integration_installation_request | integration_installation_requests | 5 | Request to install an integration on a target |
| interaction_limit | interaction_limits | 6 | Inferred from operation parameters (spec has no named schema). |
| interaction_limit_response | interaction_limit_responses | 4 | Interaction limit settings. |
| invitation | invitations | 2 | Inferred from operation parameters (spec has no named schema). |
| issue | issues | 39 | Issues are a great way to keep track of tasks, enhancements, and bugs for your projects. |
| issue_comment | issue_comments | 14 | Comments provide a way for people to collaborate on an issue. |
| issue_event | issue_events | 22 | Issue Event |
| issue_type | issue_types | 8 | The type of issue. |
| item | items | 2 | Inferred from operation parameters (spec has no named schema). |
| job | jobs | 23 | Information of a job execution in a workflow run |
| key | keys | 8 | Key |
| key_simple | key_simples | 4 | Key Simple |
| label | labels | 7 | Color-coded labels help you categorize and filter your issues (just like labels in Gmail). |
| language | languages | 2 | Inferred from operation parameters (spec has no named schema). |
| license | licenses | 13 | License |
| license_content | license_contents | 14 | License Content |
| license_simple | license_simples | 6 | License Simple |
| lock | locks | 3 | Inferred from operation parameters (spec has no named schema). |
| log | logs | 2 | Inferred from operation parameters (spec has no named schema). |
| machine | machines | 2 | Inferred from operation parameters (spec has no named schema). |
| machine_size | machine_sizes | 2 | Inferred from operation parameters (spec has no named schema). |
| markdown | markdowns | 5 | Inferred from operation parameters (spec has no named schema). |
| marketplace_listing_plan | marketplace_listing_plans | 13 | Marketplace Listing Plan |
| marketplace_purchase | marketplace_purchases | 8 | Marketplace Purchase |
| member | members | 5 | Inferred from operation parameters (spec has no named schema). |
| membership | memberships | 2 | Inferred from operation parameters (spec has no named schema). |
| merge | merges | 2 | Inferred from operation parameters (spec has no named schema). |
| merged_upstream | merged_upstreams | 4 | Results of a successful merge upstream request |
| migration | migrations | 18 | A migration. |
| milestone | milestones | 16 | A collection of related issues and pull requests. |
| minimal_repository | minimal_repositories | 48 | Minimal Repository |
| network_configuration | network_configurations | 5 | A hosted compute network configuration. |
| network_setting | network_settings | 5 | A hosted compute network settings resource. |
| new | news | 2 | Inferred from operation parameters (spec has no named schema). |
| notification | notifications | 4 | Inferred from operation parameters (spec has no named schema). |
| octocat | octocats | 2 | Inferred from operation parameters (spec has no named schema). |
| oidc_custom_sub | oidc_custom_subs | 2 | Actions OIDC Subject customization |
| oidc_custom_sub_repo | oidc_custom_sub_repos | 3 | Actions OIDC subject customization for a repository |
| org | orgs | 3 | Inferred from operation parameters (spec has no named schema). |
| org_hook | org_hooks | 11 | Org Hook |
| org_membership | org_memberships | 10 | Org Membership |
| org_private_registry_configuration | org_private_registry_configurations | 9 | Private registry configuration for an organization |
| org_private_registry_configuration_with_selected_repository | org_private_registry_configuration_with_selected_repositories | 10 | Private registry configuration for an organization |
| org_repo_custom_property_value | org_repo_custom_property_values | 4 | List of custom property values for a repository |
| organization | organizations | 2 | Inferred from operation parameters (spec has no named schema). |
| organization_actions_secret | organization_actions_secrets | 6 | Secrets for GitHub Actions for an organization. |
| organization_actions_variable | organization_actions_variables | 7 | Organization variable for GitHub Actions. |
| organization_dependabot_secret | organization_dependabot_secrets | 6 | Secrets for GitHub Dependabot for an organization. |
| organization_fine_grained_permission | organization_fine_grained_permissions | 2 | Inferred from operation parameters (spec has no named schema). |
| organization_full | organization_fulls | 48 | Organization Full |
| organization_invitation | organization_invitations | 12 | Organization Invitation |
| organization_programmatic_access_grant | organization_programmatic_access_grants | 11 | Minimal representation of an organization programmatic access grant for enumerations |
| organization_programmatic_access_grant_request | organization_programmatic_access_grant_requests | 12 | Minimal representation of an organization programmatic access grant request for enumerations |
| organization_role | organization_roles | 9 | Organization roles |
| organization_secret | organization_secrets | 2 | Inferred from operation parameters (spec has no named schema). |
| organization_secret_scanning_alert | organization_secret_scanning_alerts | 30 | |
| organization_simple | organization_simples | 12 | A GitHub organization. |
| organization_variable | organization_variables | 2 | Inferred from operation parameters (spec has no named schema). |
| outside_collaborator | outside_collaborators | 3 | Inferred from operation parameters (spec has no named schema). |
| package | packages | 11 | A software package |
| package_version | package_versions | 11 | A version of a software package |
| page | pages | 13 | The configuration for GitHub Pages for a repository. |
| page_build | page_builds | 9 | Page Build |
| page_build_statu | page_build_status | 3 | Page Build Status |
| page_deployment | page_deployments | 4 | The GitHub Pages deployment status. |
| pages_deployment_statu | pages_deployment_status | 2 | |
| pages_health_check | pages_health_checks | 3 | Pages Health Check Status |
| participation_stat | participation_stats | 3 | |
| partner | partners | 2 | Inferred from operation parameters (spec has no named schema). |
| pattern_configuration | pattern_configurations | 5 | Inferred from operation parameters (spec has no named schema). |
| pending_deployment | pending_deployments | 6 | Details of a deployment that is waiting for protection rules to pass |
| permission | permissions | 6 | Inferred from operation parameters (spec has no named schema). |
| personal_access_token | personal_access_tokens | 4 | Inferred from operation parameters (spec has no named schema). |
| personal_access_token_request | personal_access_token_requests | 5 | Inferred from operation parameters (spec has no named schema). |
| ping | pings | 2 | Inferred from operation parameters (spec has no named schema). |
| platform | platforms | 2 | Inferred from operation parameters (spec has no named schema). |
| porter_author | porter_authors | 7 | Porter Author |
| porter_large_file | porter_large_files | 5 | Porter Large File |
| private_registry | private_registries | 10 | Inferred from operation parameters (spec has no named schema). |
| private_user | private_users | 43 | Private User |
| private_vulnerability_reporting | private_vulnerability_reportings | 2 | Inferred from operation parameters (spec has no named schema). |
| projects_v2 | projects_v2s | 17 | A projects v2 project |
| projects_v2_field | projects_v2_fields | 9 | A field inside a projects v2 project |
| projects_v2_item_simple | projects_v2_item_simples | 10 | An item belonging to a project |
| projects_v2_item_with_content | projects_v2_item_with_contents | 11 | An item belonging to a project |
| protected_branch | protected_branches | 14 | Branch protections protect branches |
| protected_branch_admin_enforced | protected_branch_admin_enforceds | 3 | Protected Branch Admin Enforced |
| protected_branch_pull_request_review | protected_branch_pull_request_reviews | 8 | Protected Branch Pull Request Review |
| protection | protections | 2 | Inferred from operation parameters (spec has no named schema). |
| public_key | public_keys | 2 | Inferred from operation parameters (spec has no named schema). |
| public_member | public_members | 4 | Inferred from operation parameters (spec has no named schema). |
| pull_request | pull_requests | 48 | Pull requests let you tell others about changes you've pushed to a repository on GitHub. Once a pull request is sent, interested parties ca… |
| pull_request_merge_result | pull_request_merge_results | 4 | Pull Request Merge Result |
| pull_request_review | pull_request_reviews | 13 | Pull Request Reviews are reviews on pull requests. |
| pull_request_review_comment | pull_request_review_comments | 29 | Pull Request Review Comments are comments on a portion of the Pull Request's diff. |
| pull_request_review_request | pull_request_review_requests | 3 | Pull Request Review Request |
| pull_request_simple | pull_request_simples | 36 | Pull Request Simple |
| punch_card | punch_cards | 2 | Inferred from operation parameters (spec has no named schema). |
| rate_limit_overview | rate_limit_overviews | 3 | Rate Limit Overview |
| raw | raws | 2 | Inferred from operation parameters (spec has no named schema). |
| reaction | reactions | 5 | Reactions to conversations provide a way to help people express their feelings more simply and effectively. |
| ref | refs | 2 | Inferred from operation parameters (spec has no named schema). |
| referrer_traffic | referrer_traffics | 4 | Referrer Traffic |
| release | releases | 25 | A release. |
| release_asset | release_assets | 14 | Data related to a release. |
| release_notes_content | release_notes_contents | 3 | Generated name and body describing a release |
| remove | removes | 3 | Inferred from operation parameters (spec has no named schema). |
| repo | repos | 3 | Inferred from operation parameters (spec has no named schema). |
| repo_codespaces_secret | repo_codespaces_secrets | 4 | Set repository secrets for GitHub Codespaces. |
| repository | repositories | 48 | A repository on GitHub. |
| repository_access | repository_accesses | 4 | Inferred from operation parameters (spec has no named schema). |
| repository_advisory | repository_advisories | 27 | A repository security advisory. |
| repository_collaborator_permission | repository_collaborator_permissions | 4 | Repository Collaborator Permission |
| repository_invitation | repository_invitations | 10 | Repository invitations let you manage who you collaborate with. |
| repository_ruleset | repository_rulesets | 14 | A set of rules to apply when specified conditions are met. |
| repository_subscription | repository_subscriptions | 7 | Repository invitations let you manage who you collaborate with. |
| required_pull_request_review | required_pull_request_reviews | 2 | Inferred from operation parameters (spec has no named schema). |
| required_signature | required_signatures | 2 | Inferred from operation parameters (spec has no named schema). |
| required_status_check | required_status_checks | 2 | Inferred from operation parameters (spec has no named schema). |
| rerequest | rerequests | 2 | Inferred from operation parameters (spec has no named schema). |
| rerun | reruns | 3 | Inferred from operation parameters (spec has no named schema). |
| rerun_failed_job | rerun_failed_jobs | 3 | Inferred from operation parameters (spec has no named schema). |
| restore | restores | 2 | Inferred from operation parameters (spec has no named schema). |
| restriction | restrictions | 2 | Inferred from operation parameters (spec has no named schema). |
| retention_limit | retention_limits | 3 | Inferred from operation parameters (spec has no named schema). |
| review_comment | review_comments | 29 | Legacy Review Comment |
| revoke | revokes | 3 | Inferred from operation parameters (spec has no named schema). |
| root | roots | 34 | |
| route_stat | route_stats | 5 | Inferred from operation parameters (spec has no named schema). |
| rule_suite | rule_suites | 12 | Response |
| ruleset | rulesets | 2 | Inferred from operation parameters (spec has no named schema). |
| ruleset_version | ruleset_versions | 3 | The historical version of a ruleset |
| run | runs | 2 | Inferred from operation parameters (spec has no named schema). |
| runner | runners | 8 | A self hosted runner |
| runner_application | runner_applications | 7 | Runner Application |
| runner_group | runner_groups | 2 | Inferred from operation parameters (spec has no named schema). |
| runner_groups_org | runner_groups_orgs | 14 | |
| schema | schemas | 2 | Inferred from operation parameters (spec has no named schema). |
| seat | seats | 2 | Inferred from operation parameters (spec has no named schema). |
| secret | secrets | 6 | Inferred from operation parameters (spec has no named schema). |
| secret_scanning_alert | secret_scanning_alerts | 29 | |
| secret_scanning_location | secret_scanning_locations | 3 | |
| secret_scanning_pattern_configuration | secret_scanning_pattern_configurations | 4 | A collection of secret scanning patterns and their settings related to push protection. |
| secret_scanning_push_protection_bypass | secret_scanning_push_protection_bypasses | 4 | |
| secret_scanning_scan_history | secret_scanning_scan_histories | 5 | |
| selected_action | selected_actions | 4 | |
| selected_team | selected_teams | 3 | Inferred from operation parameters (spec has no named schema). |
| selected_user | selected_users | 3 | Inferred from operation parameters (spec has no named schema). |
| self_hosted_runner | self_hosted_runners | 3 | Inferred from operation parameters (spec has no named schema). |
| self_hosted_runners_setting | self_hosted_runners_settings | 3 | |
| short_blob | short_blobs | 3 | Short Blob |
| short_branch | short_branches | 6 | Short Branch |
| simple_classroom | simple_classrooms | 4 | A GitHub Classroom classroom |
| simple_classroom_assignment | simple_classroom_assignments | 18 | A GitHub Classroom assignment |
| simple_user | simple_users | 22 | A GitHub user. |
| snapshot | snapshots | 10 | Inferred from operation parameters (spec has no named schema). |
| social_account | social_accounts | 3 | Social media account |
| ssh_signing_key | ssh_signing_keys | 4 | A public SSH key used to sign Git commits |
| star | stars | 2 | Inferred from operation parameters (spec has no named schema). |
| stargazer | stargazers | 2 | Inferred from operation parameters (spec has no named schema). |
| starred | starreds | 4 | Inferred from operation parameters (spec has no named schema). |
| statu | status | 11 | The status of a commit. |
| status_check_policy | status_check_policies | 6 | Status Check Policy |
| storage_limit | storage_limits | 3 | Inferred from operation parameters (spec has no named schema). |
| storage_record | storage_records | 11 | Inferred from operation parameters (spec has no named schema). |
| sub | subs | 4 | Inferred from operation parameters (spec has no named schema). |
| subject_stat | subject_stats | 2 | Inferred from operation parameters (spec has no named schema). |
| subscription | subscriptions | 2 | Inferred from operation parameters (spec has no named schema). |
| suspended | suspendeds | 2 | Inferred from operation parameters (spec has no named schema). |
| tag | tags | 5 | Tag |
| tag_protection | tag_protections | 5 | Tag protection |
| tarball | tarballs | 5 | Inferred from operation parameters (spec has no named schema). |
| team | teams | 17 | Groups of organization members that gives permissions on specified repositories. |
| team_discussion | team_discussions | 18 | A team discussion is a persistent record of a free-form conversation within a team. |
| team_discussion_comment | team_discussion_comments | 13 | A reply to a discussion within a team. |
| team_full | team_fulls | 22 | Groups of organization members that gives permissions on specified repositories. |
| team_membership | team_memberships | 4 | Team Membership |
| team_repository | team_repositories | 48 | A team's access to a repository. |
| team_role_assignment | team_role_assignments | 18 | The Relationship a Team has with a role. |
| team_simple | team_simples | 16 | Groups of organization members that gives permissions on specified repositories. |
| template | templates | 2 | Inferred from operation parameters (spec has no named schema). |
| test | tests | 2 | Inferred from operation parameters (spec has no named schema). |
| thread | threads | 9 | Thread |
| thread_subscription | thread_subscriptions | 8 | Thread Subscription |
| time_stat | time_stats | 5 | Inferred from operation parameters (spec has no named schema). |
| timeline | timelines | 2 | Inferred from operation parameters (spec has no named schema). |
| token | tokens | 3 | Inferred from operation parameters (spec has no named schema). |
| topic | topics | 2 | A topic aggregates entities that are related to a subject. |
| update_branch | update_branches | 3 | Inferred from operation parameters (spec has no named schema). |
| usage_by_repository | usage_by_repositories | 2 | Inferred from operation parameters (spec has no named schema). |
| user | users | 5 | Inferred from operation parameters (spec has no named schema). |
| user_marketplace_purchase | user_marketplace_purchases | 9 | User Marketplace Purchase |
| user_role_assignment | user_role_assignments | 24 | The Relationship a User has with a role. |
| user_stat | user_stats | 4 | Inferred from operation parameters (spec has no named schema). |
| value | values | 4 | Inferred from operation parameters (spec has no named schema). |
| variable | variables | 6 | Inferred from operation parameters (spec has no named schema). |
| version | versions | 2 | Inferred from operation parameters (spec has no named schema). |
| view_traffic | view_traffics | 4 | View Traffic |
| vulnerability_alert | vulnerability_alerts | 2 | Inferred from operation parameters (spec has no named schema). |
| webhook_config | webhook_configs | 5 | Configuration object of the webhook |
| workflow | workflows | 11 | A GitHub Actions workflow |
| workflow_run | workflow_runs | 36 | An invocation of a workflow |
| workflow_run_usage | workflow_run_usages | 3 | Workflow Run Usage |
| workflow_usage | workflow_usages | 2 | Workflow Usage |
| zen | zens | 2 | Inferred from operation parameters (spec has no named schema). |
| zipball | zipballs | 5 | Inferred from operation parameters (spec has no named schema). |
Three surfaces, one state
Mount GitHub 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":["github"],"ttl_minutes":60}'Known limitations
Spec-grounded surface with synthetic seeded values; operations outside the spec are not mounted.