Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ packages = ["src/colab_cli"]

[tool.hatch.build.targets.wheel.force-include]
"README.md" = "colab_cli/README.md"
"COLAB_SKILL.md" = "colab_cli/COLAB_SKILL.md"
"skills/colab-operator/SKILL.md" = "colab_cli/SKILL.md"

[tool.uv]
package = true
Expand Down
10 changes: 10 additions & 0 deletions COLAB_SKILL.md → skills/colab-operator/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,17 @@
---
name: colab-operator
description: Operate Google Colab environments via the `colab` CLI. Use when asked to create or manage GPU/TPU sessions, run Python/shell on a remote Colab VM, sync files, automate environment setup (packages, auth, Drive), or export session history.
---

# Skill: Colab Session Operator

Operate Google Colab environments via the `colab` CLI: provision GPU/TPU sessions, run Python/shell on the VM, sync files, and capture work as notebooks.

## Installation

If the user does not already have the `colab` tool installed, it can be acquired
by running `uv tool install google-colab-cli` or `pip install google-colab-cli`.

## When to activate
- Creating or managing TPU/GPU sessions.
- Running Python or shell on a remote Colab VM.
Expand Down
4 changes: 2 additions & 2 deletions src/colab_cli/commands/utility.py
Original file line number Diff line number Diff line change
Expand Up @@ -417,8 +417,8 @@ def readme():


def skill():
"""Print the bundled COLAB_SKILL.md file"""
_print_resource("COLAB_SKILL.md")
"""Print the bundled SKILL.md file"""
_print_resource("SKILL.md")


def register(app: typer.Typer):
Expand Down
4 changes: 2 additions & 2 deletions tests/test_readme.py
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ def test_skill_from_resources(mock_resources):
mock_skill.read_text.return_value = "Fake SKILL content"

def joinpath_side_effect(name):
if name == "COLAB_SKILL.md":
if name == "SKILL.md":
return mock_skill
return MagicMock(is_file=MagicMock(return_value=False))

Expand All @@ -62,7 +62,7 @@ def joinpath_side_effect(name):
assert result.exit_code == 0
assert result.output.strip() == "Fake SKILL content"
mock_resources.assert_called_once_with("colab_cli")
mock_resources.return_value.joinpath.assert_called_with("COLAB_SKILL.md")
mock_resources.return_value.joinpath.assert_called_with("SKILL.md")


def test_readme_fallback_to_file(mock_resources):
Expand Down