Skip to content

feat(cli): Print the bundled agent skill with quickstart and guide commands - #2589

Draft
karangattu wants to merge 3 commits into
posit-dev:mainfrom
karangattu:add-cli-quickstart-agents
Draft

karangattu wants to merge 3 commits into
posit-dev:mainfrom
karangattu:add-cli-quickstart-agents

Conversation

@karangattu

@karangattu karangattu commented Oct 28, 2026 •

Copy link
Copy Markdown
Collaborator

This change lets a coding agent read the bundled Shiny for Python skill from the command line. The agent does not have to install the skill first. The design follows tidyverse/data-dict, which prints its skills from CLI commands.

How to use

Run shiny with no command to list every command with its full description. An agent that runs shiny sees the quickstart and guide commands right away.

Example output for shiny
Usage: shiny <COMMAND>

Commands:
  add             Add files to enhance your Shiny app.
  ...
  guide           Print a Shiny for Python guide topic to stdout, or list topics.
  quickstart      Print the Shiny for Python agent skill to stdout.
  run             Run a Shiny app (press Ctrl+C to stop).
  ...

Run shiny quickstart to print the bundled shiny-for-python skill. The command reads SKILL.md from the package, so the output always matches the installed version of Shiny. Each topic link in the skill shows as a shiny guide <topic> command.

Example output for shiny quickstart
---
name: shiny-for-python
description: "Building, styling, testing, debugging, or observing a Shiny for Python ..."
---

# Shiny for Python

Shiny for Python (py-shiny) builds reactive web apps in pure Python. ...

## Foundations

| Topic | Use when | Reference |
|---|---|---|
| Reactivity | A value should recompute or an output update as inputs change; ... | `shiny guide reactivity` |
| Express mode | Writing or converting an Express app ... | `shiny guide express` |
...

Run shiny guide <topic> to print the full reference for one topic. Run shiny guide with no topic to list all topics.

Example output for shiny guide reactivity
# Reactivity in Shiny for Python

## Overview

Shiny builds a dependency graph automatically: reading a reactive source
(`input.x()`, a `reactive.value`, a `@reactive.calc`) inside a reactive context
registers a dependency, so when that source changes, everything that read it
re-runs. ...
calc/effect either — use `reactive.extended_task` (see `shiny guide extended-tasks`).
...

To run the commands without installing Shiny, use uvx:

uvx --from shiny shiny quickstart

The command is shiny guide and not shiny docs, because #2466 uses shiny docs for function reference lookups.

@karangattu karangattu changed the title feat(cli): Add quickstart and docs commands feat(cli): Add quickstart and guide commands Oct 28, 2026
@karangattu karangattu changed the title feat(cli): Add quickstart and guide commands feat(cli): Print the bundled agent skill with quickstart and guide commands Oct 28, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant