tutti: Skill for Codex

.codex/skills/tutti-app-release/SKILL.md

tutti-app-release is a skill for Codex from tutti-os/tutti. It costs 80 tokens per session (3,643 once invoked), scanned A, original, Apache-2.0.

A release workflow for publishing a Tutti workspace app through GitHub Actions, including its package and release metadata.

In plain words
What is it for?
Use it to set up or review caller workflows, validate a tutti.app.json manifest, debug release jobs, publish versions, or update catalogue metadata.
Why use it?
It clarifies how app files, version information, and the shared app catalogue are updated, and distinguishes releasing an app from refreshing the catalogue. This helps avoid rerunning the wrong release operation.

Skill for Codex

Written for Codex: agents/openai.yaml present. Also seen: mentions AGENTS.md.

This is tutti-os/tutti's own configuration. It tells Codex how to work on tutti itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything tutti configures →

About the project

Tutti is a real-time collaboration space where people can work alongside multiple AI agents, including by sharing rooms, editing together, and borrowing agents. It is intended for users who want human-agent or multi-agent collaboration across devices, with open-source and VM versions available. The catalogue entries provide skills and instructions for working with Tutti.

tutti-os/tutti · 3,700 stars · on GitHub · tutti.sh

Reuse

Borrowing it

Nothing to install: this file belongs to tutti-os/tutti. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/tutti-os/tutti/main/.codex/skills/tutti-app-release/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/tutti-os/tutti

Made for: Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for tutti-app-release

README.md
[![agentmods](https://agentmods.dev/badge/skills/tutti-os/tutti/tutti-app-release/github.svg)](https://agentmods.dev/skills/tutti-os/tutti/tutti-app-release)
Your own site
<a href="https://agentmods.dev/skills/tutti-os/tutti/tutti-app-release"><img src="https://agentmods.dev/badge/skills/tutti-os/tutti/tutti-app-release/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for tutti-app-release

Your own site · 80×15
<a href="https://agentmods.dev/skills/tutti-os/tutti/tutti-app-release"><img src="https://agentmods.dev/badge/skills/tutti-os/tutti/tutti-app-release.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 80 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,643 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00080 $0.03643
Opus 5 $0.00040 $0.01821
Sonnet 5 $0.00016 $0.00729
Haiku 4.5 $0.00008 $0.00364

Measured 11d ago against content hash 47ae750f3807, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-10, from the pricing page.

Security

Grade A, and why

tutti-app-release scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 11d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.codex/skills/tutti-app-release/SKILL.md · 300 lines

How it starts

The opening of the file, as written. The whole thing — 300 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Tutti App Release

Use this skill when an external app repository publishes a remote Tutti workspace app into App Center release metadata.

The external repository calls the reusable workflow from the Tutti/Tutti repository:

uses: tutti-os/tutti/.github/workflows/publish-tutti-app-release.yml@main

That workflow builds one app package, runs @tutti-os/app-release-tools, uploads immutable release files plus mutable latest.json and versions.json, and can optionally merge that app into the shared catalog.json.

Operating Rules

Inspect before acting:

  • Read the caller workflow, tutti.app.json, package script, and recent GitHub Actions runs.
  • Confirm whether the user wants a new app release, a catalog refresh, or CI debugging. Do not rerun a release just to repair catalog state.

For catalog publication:

  • There are three valid modes. Explain them explicitly when helping a user choose.
  • Release only: publish_catalog: false. This uploads a new app version and updates apps/<appId>/latest.json and versions.json; App Center will see it the next time catalog.json is published.
  • Release and catalog: publish_catalog: true. This uploads the app release, then immediately merges that release into catalog.json.
  • Catalog only: catalog_only: true. Use this after a release already succeeded when the user forgot to publish catalog, wants to validate first, or wants to refresh catalog without bumping or uploading a new version.
  • Do not rerun a full app release just to repair catalog state.
  • If the app caller workflow exposes catalog_only, use that. If it does not, use the Tutti catalog workflow directly or add the caller input when the user wants that repo to support catalog-only dispatch.

For versioning:

  • Production releases should be workflow-driven. Run the production caller workflow with release_bump (patch, minor, or major); the reusable workflow calculates the next version from the greater of the packaged manifest version and existing release tags, then creates the tag after the S3 release verifies.
  • The workflow never bumps or commits app manifest versions. Do not add caller-side release PRs or manifest bump commits to work around protected branches.
  • Staging releases should leave release_bump empty. The workflow uses manifest.version+<short git sha> from the packaged manifest and does not create a release tag.

Read the full file on GitHub · 300 lines

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 11d ago First seen · 300 lines · 80 tokens per session scan A 47ae750f3807

Subscribe to this mod's changes

tutti-app-release is a skill published in the GitHub repository tutti-os/tutti (3,700 stars, last pushed 5d ago), licensed Apache-2.0. It adds 80 tokens to every session and 3,643 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.