Skip to content

feat(chat): run chat turns in CodeAct mode with a JS graph object model #8433

feat(chat): run chat turns in CodeAct mode with a JS graph object model

feat(chat): run chat turns in CodeAct mode with a JS graph object model #8433

Workflow file for this run

name: Interactive Assistant
on:
issue_comment:
types: [created]
pull_request_review_comment:
types: [created]
jobs:
assistant:
if: |
contains(github.event.comment.body, ' /oc') ||
startsWith(github.event.comment.body, '/oc') ||
contains(github.event.comment.body, ' /opencode') ||
startsWith(github.event.comment.body, '/opencode')
runs-on: ubuntu-latest
permissions:
id-token: write
contents: write
pull-requests: write
issues: write
actions: read
steps:
- name: Checkout repository
uses: actions/checkout@v7
with:
fetch-depth: 0
- name: Set up Node.js
uses: actions/setup-node@v6
with:
node-version-file: ".nvmrc"
cache: "npm"
- name: Install all workspace dependencies
run: npm ci
env:
ELECTRON_SKIP_BINARY_DOWNLOAD: "1"
- name: Run Claude Code
uses: anthropics/claude-code-action@v1.0.183
with:
claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
additional_permissions: |
actions: read
claude_args: |
--model claude-opus-5
--allowedTools "Bash,WebFetch,Edit,Read,Replace,CreatePullRequest"
--append-system-prompt "Before finalizing any code change or PR, invoke the unslop skill (.claude/skills/unslop/SKILL.md) and apply its checklist to your diff. Strip speculative abstractions, narrating comments, defensive try/catch on trusted paths, useEffect-for-derived-data, raw MUI imports outside ui_primitives/, whole-store Zustand subscriptions, useEffect+fetch instead of useQuery, and prose throat-clearing."
prompt: |
# NodeTool Assistant
You are an assistant for NodeTool, a React/TypeScript visual AI workflow builder.
## Project
- Stack: React 18.2, TypeScript 5.7, Zustand, ReactFlow, MUI v7
- Layout: `/web` (React app), `/electron` (desktop), `/mobile` (React Native)
- Backend is a separate Python repo — this repo is frontend only
- Read `AGENTS.md` and `.github/copilot-instructions.md` for coding conventions
## Respond to the comment
Read the issue/PR comment and do what was asked. This could be:
- Answering a question about the codebase
- Investigating a bug
- Implementing a fix or small feature
- Reviewing code
## If you make code changes
1. Keep changes minimal and focused on what was asked
2. Run `npm run typecheck && npm run lint && npm run test` — all must pass
3. Create a PR linking back to the issue/PR where `/oc` was invoked
4. Do not refactor or "improve" code beyond what was requested