Files
actions/claude-code-gitea-action-slim
AtomicQMS Service d974130597 Sync actions from atomicqms-style deployment
Actions synced:

Synced at: 2025-12-27T16:24:04Z
2025-12-27 11:24:04 -05:00
..

Claude Code Action Slim

A simplified, faster version of the Claude Code Gitea Action that eliminates redundant tool installations.

Key Differences from Original

Feature Original Slim
Bun install Always downloads Skips if pre-installed
Claude CLI install Always downloads (twice!) Skips if pre-installed
Base action Calls anthropics/claude-code-base-action Runs Claude directly
Dependencies ~140KB + base-action ~30KB
Typical startup ~5-7 minutes ~10 seconds (with custom container)

Performance Optimization

This action is designed to work with custom job containers that have Bun and Claude CLI pre-installed:

# In your runner configuration
GITEA_RUNNER_LABELS: "ubuntu-latest:docker://ghcr.io/your-org/custom-job-container:latest"

Where your container Dockerfile includes:

FROM catthehacker/ubuntu:act-latest
RUN curl -fsSL https://bun.sh/install | bash
RUN npm install -g @anthropic-ai/claude-code

Usage

- name: Run AtomicAI Assistant
  uses: atomicqms-service/actions/claude-code-gitea-action-slim@main
  with:
    gitea_token: ${{ secrets.QMS_GITEA_TOKEN }}
    claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
    trigger_phrase: '@atomicai'

Inputs

Input Description Default
trigger_phrase Phrase to trigger the action @claude
gitea_token Gitea API token -
claude_code_oauth_token Claude OAuth token -
model Claude model to use -
timeout_minutes Execution timeout 30
max_turns Max conversation turns -
allowed_tools Additional allowed tools -
disallowed_tools Blocked tools -

How It Works

  1. Check for pre-installed tools - Skips Bun/Claude install if already present
  2. Prepare action - Check triggers, create tracking comment, setup branch
  3. Run Claude directly - No base-action wrapper, direct CLI invocation
  4. Update comment - Post results back to the issue/PR

Files Changed from Original

  • action.yml - Simplified steps, no base-action call
  • src/entrypoints/run-claude.ts - New direct Claude runner
  • package.json - Removed unused dependencies
  • Removed base-action/ directory entirely