本文へ移動
cccskills
無料GitHub で公開

source-command-issue

Create a GitHub issue, assign to current user, and set status to In Progress

インストール方法を見る

含まれるファイル(1)

  • SKILL.md5.2 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

source-command-issue

Use this skill when the user asks to run the migrated source command issue.

Command Template

Create GitHub Issue

Create a GitHub issue in Actual-Chat/actual-chat, assign it to the current user, and add it to the org's GitHub Project board with In Progress status.

Arguments

The argument is the issue title. Optionally, use -- to separate title from body:

  • /issue Fix login redirect loop — title only
  • /issue Fix login redirect loop -- The redirect happens when... — title + body

If no arguments are provided, ask the user for at least a title.

Steps

1. Parse arguments and craft title

Split the argument on -- (space-dash-dash-space):

  • Everything before -- is the title input
  • Everything after -- is the body (optional)

Title must be laconic — short, punchy, lowercase (except proper nouns). Strip filler words. Examples:

  • "There is an issue where the login page redirects in a loop" → fix login redirect loop
  • "We need to add the ability to upload avatars" → avatar upload
  • "The chat message list is very slow when there are many messages" → fix chat list perf with many messages

Use standard prefixes when intent is clear: fix:, feat:, refactor:, chore:. If the user already provided a short title, keep it as-is.

1b. Craft the body

An issue describes the problem, not the solution. Cover the symptom (what's broken, with concrete evidence — logs, crash reports, repro steps) and, when known, the root cause (why). Do not include a fix, a recommended approach, or a list of files to change — those belong in the PR. The team picks the approach; the issue tracks the problem.

Same laconic register as the title: short sections, no filler. Skip "Open follow-ups" / "Future work" sections unless the user asked for them — separate issues are better than to-do lists tucked inside one.

2. Check for similar issues

Before creating, search for existing issues that might be duplicates or related. Use mcp__github__search_issues with key words from the title:

  • owner: "Actual-Chat", repo: "actual-chat"
  • query: 2-3 most distinctive keywords from the title

If similar open issues are found, list them to the user with number, title, and URL. Ask whether to:

  • Skip — the issue already exists
  • Continue — create anyway (not a duplicate)
  • Link — create and reference the related issue in the body

If no similar issues are found, proceed silently.

3. Get current user

Use mcp__github__get_me to get the authenticated user's login.

4. Create the issue

Pick the org-level issue type (not labels — labels are ignored in this repo). Try mcp__github__list_issue_types with owner: "Actual-Chat" to get valid values. If the call returns 403 (PAT can't read org issue types), ask the user which type to use rather than guessing.

Use mcp__github__issue_write with:

  • method: "create"
  • owner: "Actual-Chat"
  • repo: "actual-chat"
  • title: from arguments
  • body: from arguments (if provided)
  • assignees: [current_user_login]
  • type: org issue type name (e.g. Bug for defects)

Do not pass labels — this repo doesn't use them for triage.

Record the created issue number from the response.

5. Add to project board with "In Progress" status

Run the following bash commands (GH_TOKEN is set automatically by ai.ps1 from AC_GITHUB_TOKEN).

4a. Find the org project

gh project list --owner Actual-Chat --format json --limit 10

Pick the first open project. Note the project number.

4b. Add issue to project

gh project item-add <PROJECT_NUMBER> --owner Actual-Chat --url https://github.com/Actual-Chat/actual-chat/issues/<ISSUE_NUMBER> --format json

Record the item id from the response.

4c. Get the Status field ID and "In Progress" option ID

gh project field-list <PROJECT_NUMBER> --owner Actual-Chat --format json

Find the field named "Status" and get its id. Then get the option ID for "In Progress":

gh api graphql -f query='
query($projectId: ID!) {
  node(id: $projectId) {
    ... on ProjectV2 {
      field(name: "Status") {
        ... on ProjectV2SingleSelectField {
          id
          options { id name }
        }
      }
    }
  }
}' -f projectId="<PROJECT_NODE_ID>"

Note: The project node ID can be obtained from gh project view <NUMBER> --owner Actual-Chat --format json.

4d. Set status to "In Progress"

gh project item-edit --project-id <PROJECT_NODE_ID> --id <ITEM_ID> --field-id <STATUS_FIELD_ID> --single-select-option-id <IN_PROGRESS_OPTION_ID>

6. Error handling

  • If project board operations fail (e.g., token lacks project scope), still report the created issue as success and warn that the project board update failed. Suggest the user regenerate their PAT with Organization > Projects: Read and write permission (see docs-internal/set-local-env.ps1).
  • Never fail silently — always show what happened.

7. Output

Report:

  • Issue URL: https://github.com/Actual-Chat/actual-chat/issues/<NUMBER>
  • Assignee
  • Project board status (or warning if it failed)

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Delete the `-bak` backup branches that `/prepare-merge` leaves behind, local and on origin, once the work they back up has merged. Use when the user says "remove my bak branches", "clean up bak branches", "delete the backups", or "/clean-bak-branches".

日本語の概要は準備中です。原文の説明を表示しています。

Actual-Chat/actual-chat562026年10月10日 更新

create-pr

無料

Use when work on a branch is finished and the next step is a pull request — "create a PR", "open a PR", "push and PR this", "/create-pr" — when a draft PR should be marked ready for review — "mark the PR ready", "undraft it", "it's ready for review" — or right after either has happened and the team has not been told about it yet.

日本語の概要は準備中です。原文の説明を表示しています。

Actual-Chat/actual-chat562026年10月10日 更新

Search Google Cloud (GKE) server logs of the DEV environment (dev.voxt.ai). Use when troubleshooting anything that needs the server side of the story — stream stalls, RPC peer changes / reconnects, watchdog closures, mesh/node churn, pod restarts — or when the user says "check GCP logs", "check server logs on dev", or gives a dev.voxt.ai timeline from a client console log.

日本語の概要は準備中です。原文の説明を表示しています。

Actual-Chat/actual-chat562026年10月10日 更新

Search Google Cloud (GKE) server logs of the PROD environment. Use when troubleshooting a production incident that needs the server side of the story — stream stalls, RPC peer changes / reconnects, watchdog closures, mesh/node churn, pod restarts — or when the user says "check PROD logs", "check production server logs", or gives a production timeline from a client console log.

日本語の概要は準備中です。原文の説明を表示しています。

Actual-Chat/actual-chat562026年10月10日 更新

memories

無料

What this project has already learned the hard way, and where any new such fact belongs. Two jobs. (1) Routing: this project keeps NO per-project Claude memories — read this before writing anything down, and pick a durable home from the list here. (2) An index, by area, of non-obvious facts worth knowing before you guess: debugging rigs and measurements that lie, iOS/WebKit and the tethered iPhone, the Windows app, production and deployment, and general codebase traps. Use before setting up a browser- or server-driven debugging session, when a bug reproduces only on iPhone, in Safari or in the Windows app, before changing deployment configuration or reading store/crash data, when something behaves unexpectedly and you are about to guess why, and whenever you are tempted to record a fact for later.

日本語の概要は準備中です。原文の説明を表示しています。

Actual-Chat/actual-chat562026年10月10日 更新

CEO/founder-mode plan review. Rethink the problem, find the 10-star product, challenge premises, expand scope when it creates a better product. Three modes: SCOPE EXPANSION (dream big), HOLD SCOPE (maximum rigor), SCOPE REDUCTION (strip to essentials).

日本語の概要は準備中です。原文の説明を表示しています。

Actual-Chat/actual-chat562026年10月10日 更新

Actual-Chat のスキルをすべて見る

このスキルの問題を報告する