Reference

Repository action reference

Every GitHub, GitLab, and Bitbucket action exposed by the unified repository surface, grouped by workflow and parameter contract.

The vcs domain is the repository-native surface for GitHub, GitLab, and Bitbucket. It complements the higher-level integration search: use integrations to retrieve connected product knowledge, and use VCS when the request is about a repository object, diff, review, notification, link, automation, webhook, or ingest operation.

Provider values

ValueRepository service
githubGitHub
gitlabGitLab, including nested group paths
bitbucketBitbucket

Use repo_ref for a complete path such as owner/repo or group/subgroup/repo. The separate owner and repo fields are convenient for simple two-segment paths.

Repository and project actions

ActionPurpose
list_reposList repositories available through the connection
get_repoRead one repository
sync_repoRefresh repository data
update_repo_settingsChange the stored repository sync configuration
delete_repoRemove the connected repository record
get_repo_projectsList ContextStream projects linked to a repository
link_repo_projectLink a repository to an existing project
import_repo_projectCreate/import a ContextStream project from a repository
ingest_repoRequest repository ingestion
get_ingest_statusRead repository-ingest progress

Project-linking calls use project_id or project_name; import flows can also use description, create_project, ingest, and sync_config. Removing a repository connection and deleting the upstream repository are different operations: confirm the live schema and result before any destructive call.

Pull request actions

ActionPurpose
list_pullsList pull/merge requests
get_pullRead one pull request
get_pull_diffRetrieve its diff
get_pull_commentsRetrieve review and discussion comments
get_pull_commitsList included commits
get_pull_checksRead checks/statuses
get_pull_summaryRead the stored summary
summarize_pullGenerate/update a summary
review_pullSubmit a review
comment_pullAdd a general comment
merge_pullMerge the pull request

Use number for the pull request. review_pull accepts an event of APPROVE, REQUEST_CHANGES, or COMMENT, a review body, and optional inline comments. merge_pull accepts merge, squash, or rebase through merge_method, plus optional commit title and message fields.

Reviews, comments, and merges change the upstream provider. A read-only code review should stop before those actions unless the user explicitly asks to publish or merge.

Issue actions

ActionPurpose
list_issuesList issues
get_issueRead one issue
get_issue_commentsRead its comments
create_issueCreate an upstream issue
update_issueChange an upstream issue
comment_issueAdd an issue comment

Issue writes use title, body, labels, and assignees as applicable. These are provider issues, not native ContextStream entity(kind="ticket", …) records.

Commits, refs, and files

ActionPurpose
list_commitsList commits
get_commitRead one commit
get_commit_diffRetrieve one commit's diff
compare_refsCompare a base and head ref
list_branchesList branches
list_tagsList tags
get_treeRead a repository tree
get_blobRead one blob/file
search_codeSearch code through the provider

Use sha for a commit, base and head for comparisons, ref_name for a branch/tag/commit selector, and path for a tree or blob path. Provider code search and ContextStream's indexed search domain are different: provider search sees the linked remote state, while ContextStream search is optimized for grounded work across the indexed project.

Activity and notifications

ActionPurpose
get_activityRead repository activity
search_vcsSearch across repository objects
list_notificationsList provider notifications
mark_notification_readMark one notification read
mark_all_notifications_readMark all notifications in the connected provider inbox read

Notification mutation uses notification_id. Treat “mark all” as an explicit write; do not run it merely to inspect the inbox.

ActionPurpose
list_linksList indexed links between repository and ContextStream objects
create_linkCreate a link
delete_linkDelete a link
list_automationsList repository automations
create_automationCreate an automation
update_automationUpdate an automation
delete_automationDelete an automation
register_webhookRegister a webhook
unregister_webhookRemove a webhook

Links use source_type, source_id, target_type, and target_id; deletion uses link_id. Automations use automation_id and automation_config. Webhook registration and removal use the repository identity plus the optional provider selector; the consolidated call exposes no callback-URL or secret field.

Filters and pagination

Common selectors include provider, workspace_id, repo_ref (or owner/repo), state, branch, and query. Lists use page and per_page; code search can also use limit. search_vcs accepts scope such as code, issues, or pull requests. sync_repo accepts full for a full refresh. Preserve the same repository, provider, state, and branch filters while paging.

The action enum is unified, but provider permissions and feature support still apply. A valid action can return an authorization or provider-capability error for a particular connection. Do not silently fall back to a different provider or repository.

Complete input field map

FieldsUsed for
action, workspace_id, providerOperation routing and workspace/provider scope
owner, repo, repo_refRepository identity
number, sha, base, head, ref_name, pathPull, issue, commit, comparison, ref, tree, and blob identity
state, branch, query, scopeList and search filters
page, per_page, limitPagination and code-search result bounds
full, sync_configFull repository sync and stored sync settings
project_id, project_name, description, create_project, ingestProject linking, import, creation, and ingest
title, body, event, merge_method, commit_title, commit_message, commentsPull review/merge and issue/comment writes
labels, assigneesIssue metadata
notification_idOne notification mutation
link_id, source_type, source_id, target_type, target_idIndexed object links
automation_id, automation_configAutomation identity and configuration

The schema is consolidated, so the presence of a field does not mean every action consumes it. Use the action sections above and the live schema annotations together.