スキル一覧に戻る
kettleofketchup

inv-runner

by kettleofketchup

Dota 2 Event Coordinator

1🍴 0📅 2026年1月25日
GitHubで見るManusで実行

SKILL.md


name: inv-runner description: Python Invoke task automation for DTX website. This skill should be used when running repo commands, backend tests via Docker, database migrations, updating invoke tasks, Docker operations, or workflow automation. Supports dev/test/prod environments with run, exec, up, down commands. References docs/development/invoke-tasks.md for complete command reference.

Invoke Runner Skill

Python Invoke task automation for the DTX website project.

Documentation References (Single Source of Truth)

For complete command reference, consult these mkdocs files:

DocumentContent
docs/development/invoke-tasks.mdComplete invoke command reference
docs/development/backend-quickstart.mdBackend development quickstart
docs/development/testing.mdTesting procedures including worktree verification

Running Invoke Commands

When bash hooks block source commands, prepend the venv bin to PATH:

PATH=".venv/bin:$PATH" inv <command>

For worktrees, use the full path:

PATH="/path/to/worktree/.venv/bin:$PATH" /path/to/worktree/.venv/bin/inv <command>

Method 2: Poetry Run

poetry run inv <command>

Method 3: Activate venv

source .venv/bin/activate
inv <command>

Why PATH Matters

Invoke tasks call python manage.py or other Python commands. Without venv bin in PATH:

/bin/bash: line 1: python: command not found

PATH prefix ensures subprocess calls find the correct Python interpreter.

Key Patterns

Run vs Exec

run - One-off command in NEW container (with --rm):

inv test.run --cmd 'python manage.py test app.tests -v 2'

exec - Command in RUNNING container:

inv dev.exec backend 'python manage.py shell'

Environment-Specific Commands

All environments (dev, test, prod) support:

inv <env>.up       # Start
inv <env>.down     # Stop and remove
inv <env>.logs     # Follow logs
inv <env>.run --cmd '<cmd>'  # One-off command

Database Operations

inv db.migrate.all       # Migrations for all environments
inv db.migrate.test      # Test environment only
inv db.populate.all      # Reset and populate test DB

Avoid Redis hanging issues by running tests in Docker:

inv test.run --cmd 'python manage.py test app.tests -v 2'

Cypress E2E

inv test.setup           # Full setup
inv test.spec --spec navigation  # Specific spec
inv test.headless        # All tests headless

Worktree Workflow

From worktree root:

cd /path/to/worktree
PATH=".venv/bin:$PATH" inv test.down
PATH=".venv/bin:$PATH" inv test.setup
PATH=".venv/bin:$PATH" inv db.migrate.test
PATH=".venv/bin:$PATH" inv db.populate.all
PATH=".venv/bin:$PATH" inv test.up

Common Issues

IssueSolution
python: command not foundUse PATH prefix method
Redis connection errorsUse Docker: inv test.run --cmd '...'
Tests hang on cleanupUse Docker: inv test.run --cmd '...'
Module not foundEnsure correct venv is activated

When Modifying Tasks

Update these files when changing invoke tasks:

  • docs/development/invoke-tasks.md (primary reference)
  • docs/development/backend-quickstart.md (if backend-related)

スコア

総合スコア

60/100

リポジトリの品質指標に基づく評価

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

レビュー

💬

レビュー機能は近日公開予定です