一键导入
kairastra-github
Use Kairastra's injected `github_graphql` and `github_rest` tools for GitHub issue, comment, project, and PR operations during app-server sessions.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use Kairastra's injected `github_graphql` and `github_rest` tools for GitHub issue, comment, project, and PR operations during app-server sessions.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | kairastra-github |
| description | Use Kairastra's injected `github_graphql` and `github_rest` tools for GitHub issue, comment, project, and PR operations during app-server sessions. |
Use this skill for raw GitHub tracker operations during Kairastra app-server sessions.
github_graphqlgithub_restThe app-server injects these tools using Symphony's configured GitHub auth for the current session.
github_graphqlInput:
{
"query": "query or mutation document",
"variables": {
"optional": "graphql variables object"
}
}
Rules:
errors array as a failed operation even if the tool call
itself succeeded.github_restInput:
{
"method": "GET | POST | PATCH",
"path": "/repos/<owner>/<repo>/issues/123/comments",
"body": {
"optional": "request payload object"
}
}
Rules:
/issues/ or /pulls/.GET, POST, and PATCH.github_graphql for Project v2 field mutations and structured issue
reads; use github_rest for comments, review comments, issue body edits, and
PR reads when that is simpler.query IssueDetails($owner: String!, $repo: String!, $number: Int!) {
repository(owner: $owner, name: $repo) {
issue(number: $number) {
id
number
title
body
url
state
assignees(first: 20) {
nodes {
login
}
}
labels(first: 50) {
nodes {
name
}
}
projectItems(first: 20) {
nodes {
id
project {
title
number
}
}
}
}
}
}
{
"method": "GET",
"path": "/repos/<owner>/<repo>/issues/<number>/comments"
}
{
"method": "POST",
"path": "/repos/<owner>/<repo>/issues/<number>/comments",
"body": {
"body": "## Codex Workpad\n\n..."
}
}
Edit issue body:
{
"method": "PATCH",
"path": "/repos/<owner>/<repo>/issues/<number>",
"body": {
"body": "updated issue body"
}
}
Edit an issue comment:
{
"method": "PATCH",
"path": "/repos/<owner>/<repo>/issues/comments/<comment_id>",
"body": {
"body": "updated comment body"
}
}
{
"method": "GET",
"path": "/repos/<owner>/<repo>/pulls/<number>/comments"
}
{
"method": "POST",
"path": "/repos/<owner>/<repo>/pulls/<number>/comments",
"body": {
"body": "[codex] Addressing this now.",
"in_reply_to": 123456789
}
}
Status field id and option ids.updateProjectV2ItemFieldValue through github_graphql.Example:
mutation UpdateProjectStatus(
$projectId: ID!
$itemId: ID!
$fieldId: ID!
$optionId: String!
) {
updateProjectV2ItemFieldValue(
input: {
projectId: $projectId
itemId: $itemId
fieldId: $fieldId
value: { singleSelectOptionId: $optionId }
}
) {
projectV2Item {
id
}
}
}
Create a well-formed git commit from current changes using session history for rationale and summary; use when asked to commit, prepare a commit message, or finalize staged work.
Investigate stuck runs and execution failures by tracing Kairastra and agent logs with issue/session identifiers; use when runs stall, retry repeatedly, or fail unexpectedly.
Land a PR by monitoring conflicts, resolving them, waiting for checks, and squash-merging when green; use when asked to land, merge, or shepherd a PR to completion.
Pull the latest origin default branch into the current local branch and resolve merge conflicts (aka update-branch). Use when the active agent needs to sync a feature branch with origin, perform a merge-based update (not rebase), and guide conflict resolution best practices.
Push current branch changes to origin and create or update the corresponding pull request; use when asked to push, publish updates, or create pull request.