Official agent skill

Cao Session Liveness

by awslabs in awslabs/cli-agent-orchestrator

Verify whether a CAO session is actually alive and what it really said, before reporting progress or completion to a user.

OfficialApache-2.0Auto-check passedAgent Workflows

Install Cao Session Liveness

skills CLI
$ npx skills add awslabs/cli-agent-orchestrator --skill cao-session-liveness -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install awslabs/cli-agent-orchestrator cao-session-liveness --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/awslabs/cli-agent-orchestrator.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/cao-session-liveness .claude/skills/cao-session-liveness && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
cao-session-liveness
GitHub stars
1.4k
Token cost
~1.5k tokens
SKILL.md length
846 words
Files
1
Skills in repo
14
Repo updated
First seen
Licence
Apache-2.0

At a glance

Verify whether a CAO session is actually alive and what it really said, before reporting progress or completion to a user.

  • Works in 3 steps: Read the status (get_terminal_status, or… → Read the output tail… → If the two disagree, the output wins.
  • Tasks that involve Authentication
  • SKILL.md covers Why this matters, The two-signal rule, Dead-session discriminators and Verify a provider before…, plus 4 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Cao Session Liveness is an agent skill from awslabs/cli-agent-orchestrator, published by the product's own GitHub organization. Verify whether a CAO session is actually alive and what it really said, before reporting progress or completion to a user. Use alongside cao-session-management whenever you launch, poll, or report on a CAO session — especially when a session appears stalled, a send times out, or a status value looks inconsistent with the output.

Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Agent Workflows, covering Authentication. It works with Model Context Protocol. The repository describes itself as: Multi-agent orchestration for AI coding CLIs — Claude Code, Kiro, Codex, and more, coordinated in isolated tmux sessions. The licence is Apache-2.0.

When your agent uses it

  • Tasks that involve Authentication

Example prompts

  • “/cao-session-liveness”

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. Read the status (get_terminal_status, or cao session status SESSION).
  2. Read the output tail (read_session_output / get_terminal_output, or
  3. If the two disagree, the output wins.

What it can do on your machine

Read from SKILL.md and the folder at commit 4fc75df. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Cao Session Liveness loads about 1.5k tokens when it runs. Until then it costs about 88 tokens; SKILL.md has 846 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~88
When it runs · the whole SKILL.md, loaded when a task matches
~1.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from awslabs/cli-agent-orchestrator at commit 4fc75df, republished under its Apache-2.0 licence (© awslabs). 846 words, ~1,518 tokens.

Download SKILL.mdSave it as .claude/skills/cao-session-liveness/SKILL.md (or your agent's skills folder).
name
cao-session-liveness
description
Verify whether a CAO session is actually alive and what it really said, before reporting progress or completion to a user. Use alongside cao-session-management whenever you launch, poll, or report on a CAO session — especially when a session appears stalled, a send times out, or a status value looks inconsistent with the output.

CAO Session Liveness

Companion to cao-session-management, which covers the mechanics of launching and messaging sessions. This skill covers a single question that mechanics alone cannot answer: is the session actually alive, and is the status telling me the truth?

Why this matters

Every CAO provider infers agent state by pattern-matching the rendered terminal screen. There is no structured protocol between CAO and the provider CLI. A provider that has exited, crashed, or stalled on an unanswerable dialog can leave a screen that still matches an idle or processing pattern.

The consequence is specific and it is the failure this skill exists to prevent: reporting progress on a session that is already dead.

The two-signal rule

Never report readiness, progress, or completion from a status value alone. Always corroborate with output before you tell a user anything:

  1. Read the status (get_terminal_status, or cao session status SESSION).
  2. Read the output tail (read_session_output / get_terminal_output, or cao session status SESSION --json and inspect last_output).
  3. If the two disagree, the output wins.

A status of idle with an output tail showing a shell prompt means the CLI exited. Report the session as dead, not as ready.

Dead-session discriminators

Treat any of the following in the output tail as proof the provider is no longer running, regardless of the reported status:

SignalMeans
Session ended. / Resume with: <cli> --resume-id ...The CLI exited on its own
error: Conflicting options: or a usage/help bannerThe CLI rejected its launch flags and never started
API Error (...), 400, or a model/auth failureThe provider started but cannot reach a model
A bare shell prompt with a directory and timestamp, no agent chromeThe pane fell back to the shell
An output read that fails with an extraction errorNo response boundary on screen; corroborate before trusting

A session parked in waiting_user_answer that never advances is usually stalled on a dialog nothing will answer. Treat it as dead weight, report it to the user, and do not silently kill it.

Not a dead session: a finished handoff worker

A blocking handoff tears its worker down once it returns. The worker terminal ID the conductor reports was valid during the call and is gone afterwards, so querying it later is expected to fail:

  • get_terminal_status / GET /terminals/<id> returns not-found
  • cao session status SESSION --workers lists no workers

Neither is evidence the conductor invented the delegation. Confirm a handoff from the conductor's own transcript — a full-mode output read showing the handoff tool call, its agent_profile, and the returned output — not from the terminal registry. Only a non-blocking assign leaves a worker alive to query.

Do not accuse a conductor of fabricating a delegation on the strength of a missing terminal alone.

Show full SKILL.md (396 more words)Show less

Verify a provider before depending on it

Provider reliability varies, is version-sensitive, and changes as upstream CLIs release new dialogs and flags. Do not assume; verify once per environment:

  1. Launch a throwaway session in a scratch directory.
  2. Apply the two-signal rule.
  3. Send a trivial task with a short timeout and confirm output returns.
  4. Shut the session down.

Known reliability characteristics, as context for interpreting what you see:

ProviderDetection basisWhat to watch for
kiro_cliVersion-specific prompt, credits, and separator patternsNew startup dialogs that default to a decline option; flag combinations the installed CLI rejects
hermesIdle timer stable across repeated pollsCustom themes break prompt matching; slowest to confirm completion. Patterns are overridable by environment variable
opencode_cliAlt-screen TUI completion markerScrollback is roughly one viewport; a long single response can lose its own top and fail extraction
claude_code, codexRendered-screen detectionGenerally stable headless; still apply the two-signal rule

If a provider fails to launch headlessly, report the exact signature to the user and offer a different provider. Do not retry the same launch repeatedly — a flag rejection or a declining dialog will fail identically every time.

Interpreting a send that does not return

  • A timeout is not a failure. The agent is still working; the caller stopped waiting. Say so, and check again later.
  • Never re-send a task after a timeout. The original may still be running, and a duplicate risks conflicting work in the same directory.
  • A busy terminal refuses input. Wait for idle or completed; do not force.
  • An async send returns nothing by design. Poll afterwards, applying the two-signal rule.

Record what each session is for

CAO stores a session's name, not its purpose. An inventory of live sessions cannot tell you which is safe to touch.

Keep a short registry outside CAO — one line per session you launch: name, provider, working directory, purpose, date. Update it on launch and on shutdown, and read it before answering any question about what a session is doing or before acting on one.

Do not act on sessions you did not launch

Long-running sessions may hold real, unrecoverable work. Reads are always safe. Before sending to or shutting down a session you did not start yourself, ask the user first. Never issue a shutdown that targets all sessions at once.

© awslabs, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/cao-session-liveness of awslabs/cli-agent-orchestrator.

Open the folder on GitHubat commit 4fc75df

Compare with similar skills

Cao Session Liveness next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Cao Session Liveness compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Cao Session Liveness this skillawslabs/cli-agent-orchestrator1.4k—~1.5kAutomated safety check: PassApache-2.0
MCP Server Builder with mcp-usemcp-use/mcp-use11k—~923Automated safety check: PassApache-2.0
Cross Origin Iframe Probejumodada/Drissionpage-MCP-Server487—~1.2kAutomated safety check: PassCustom licence
Githits Onboardinggithits-com/githits-cli115—~3.5kAutomated safety check: PassApache-2.0
Fastmcp Serverdavila7/claude-code-templates33k—~1.9kAutomated safety check: PassMIT
Copilot SDKintellectronica/agent-skills295—~3.2kAutomated safety check: PassCC0-1.0

Similar skills

  • Builds, modifies, debugs, migrates and verifies TypeScript MCP servers and MCP Apps with the mcp-use framework, treating the installed package's types as the source of truth.

    11k GitHub stars~923 tokensUpdated yesterday
    Agent WorkflowsAuto-check passed
  • Cross Origin Iframe Probe

    jumodada/Drissionpage-MCP-Server

    A skill your agent uses when a drissionpage-mcp task targets an iframe such as a payment widget, challenge, SSO flow, or embedded checkout.

    487 GitHub stars~1.2k tokensUpdated 26 days ago
    Agent WorkflowsAuto-check passed
  • Githits Onboarding

    githits-com/githits-cli

    A skill your agent uses when the user asks to install, connect, configure, sign in to, sign up for, or start using GitHits.

    115 GitHub stars~3.5k tokensUpdated yesterday
    Agent WorkflowsAuto-check passed
  • Fastmcp Server

    davila7/claude-code-templates

    Complete guide for building MCP servers with FastMCP 3.0 - tools, resources, authentication, providers, middleware, and deployment.

    33k GitHub stars~1.9k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Copilot SDK

    intellectronica/agent-skills

    This skill helps with GitHub Copilot SDK work across Node.js/TypeScript, Python, Go, .NET, and Java.

    295 GitHub stars~3.2k tokensUpdated 5 mo ago
    Agent WorkflowsAuto-check passed
  • Copilot SDK

    aiskillstore/marketplace

    Build applications that programmatically interact with GitHub Copilot.

    433 GitHub starsUsed in 4 repos~3.8k tokens
    Agent WorkflowsAuto-check passed

More from awslabs/cli-agent-orchestrator

All 14 skills in this repo
  • Cao MCP Apps

    awslabs/cli-agent-orchestrator

    Official

    Enable, operate, and extend CAO's MCP Apps surface — the host-rendered fleet dashboard visible inside MCP App hosts (Claude Desktop, ChatGPT, VS Code Copilot, Goose, Postman).

    1.4k GitHub stars~1.9k tokensUpdated today
    Auto-check passed
  • Agui Author

    awslabs/cli-agent-orchestrator

    Official

    Author live dashboard UI from an agent via the emitui MCP tool.

    1.4k GitHub stars~2k tokensUpdated today
    Auto-check passed
  • MCP Apps Builder

    awslabs/cli-agent-orchestrator

    Official

    Load the official MCP Apps builder skills (create-mcp-app, migrate-oai-app, add-app-to-server, convert-web-app) from github.com/modelcontextprotocol/ext-apps.

    1.4k GitHub stars~1.7k tokensUpdated today
    Auto-check passed
  • Cao Plugin

    awslabs/cli-agent-orchestrator

    Official

    Create a new CAO (CLI Agent Orchestrator) plugin. An agent skill from awslabs/cli-agent-orchestrator.

    1.4k GitHub stars~3.1k tokensUpdated today
    Auto-check: notes
  • Cao Provider

    awslabs/cli-agent-orchestrator

    Official

    Create a new CLI agent provider for CAO (CLI Agent Orchestrator).

    1.4k GitHub stars~2.3k tokensUpdated today
    Auto-check passed
  • Cao Agent Routing

    awslabs/cli-agent-orchestrator

    Official

    Find and select the best installed CAO agent profile for a task before delegating with assign or handoff.

    1.4k GitHub stars~552 tokensUpdated today
    Auto-check passed

Questions about Cao Session Liveness

What does Cao Session Liveness do?

Verify whether a CAO session is actually alive and what it really said, before reporting progress or completion to a user. Cao Session Liveness is an agent skill from awslabs/cli-agent-orchestrator, published by the product's own GitHub organization. Verify whether a CAO session is actually alive and what it really said, before reporting progress or completion to a user.

When should I use Cao Session Liveness?

Cao Session Liveness fits situations like: tasks that involve Authentication.

How do I install Cao Session Liveness in Claude Code?

Run `npx skills add awslabs/cli-agent-orchestrator --skill cao-session-liveness -a claude-code`. Or copy the skill folder (skills/cao-session-liveness in awslabs/cli-agent-orchestrator) into .claude/skills/cao-session-liveness in your project. Claude Code loads it when a task matches its description.

How do I install Cao Session Liveness in Codex?

Run `npx skills add awslabs/cli-agent-orchestrator --skill cao-session-liveness -a codex`. Or copy the skill folder (skills/cao-session-liveness in awslabs/cli-agent-orchestrator) into .agents/skills/cao-session-liveness in your project. Codex loads it when a task matches its description.

Can I use Cao Session Liveness in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add awslabs/cli-agent-orchestrator --skill cao-session-liveness -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/cao-session-liveness, .gemini/skills/cao-session-liveness, .github/skills/cao-session-liveness and .opencode/skills/cao-session-liveness in your project.

What does Cao Session Liveness need to run?

SKILL.md names no scripts, command-line tools or credentials: Cao Session Liveness is instructions for the agent only.

Does Cao Session Liveness access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Cao Session Liveness safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Cao Session Liveness use?

Cao Session Liveness is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Cao Session Liveness use?

About 1.5k tokens (SKILL.md is roughly 6.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Cao Session Liveness?

Skills that share tags, products or a category with Cao Session Liveness: MCP Server Builder with mcp-use (mcp-use/mcp-use, 11k stars), Cross Origin Iframe Probe (jumodada/Drissionpage-MCP-Server, 487 stars), Githits Onboarding (githits-com/githits-cli, 115 stars) and Fastmcp Server (davila7/claude-code-templates, 33k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Cao Session Liveness?

awslabs (a GitHub organization, an official publisher) maintains it in awslabs/cli-agent-orchestrator, which has 1,402 GitHub stars. The repository holds 14 skills in this directory. The repository was last updated on October 10, 2026.

Source: awslabs/cli-agent-orchestrator on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.