Skip to content

Document the app.manifest.json (application bundle) schema and verify traverse-cli app new scaffold output #223

Description

@enricopiovesan

Summary

Running a capability through an embedder SDK (Rust traverse-embedder / Web traverse-embedder-web) requires packaging it as an application bundle (app.manifest.json) — a materially different, more involved manifest than the capability-level agent_package manifest, since it includes a state machine, placement policy, and public-surface declarations. There's no canonical schema doc for this format; the only guidance available is reverse-engineering existing example files (e.g. examples/applications/traverse-starter/app.manifest.json in traverse-framework/traverse).

Evidence

Confirmed traverse-cli app new exists (Command::AppNew { app_id, register, workspace_id } in traverse-cli/src/main.rs), but did not verify what it actually scaffolds — a complete, ready-to-fill app.manifest.json, or a minimal stub — while documenting a Claude Skill for building Traverse apps end-to-end, since no schema reference exists to check its output against.

Impact

Someone who has successfully authored, compiled, and validated (agent inspect) a capability has no documented path from there to "package it so an embedder can actually run it" — the gap between capability-level validation and real execution is currently bridged only by reading example files and guessing at field names.

Suggested fix

Publish a schema reference for app.manifest.json (mirroring the level of detail already available for capability contracts elsewhere in the docs), and confirm/document exactly what traverse-cli app new scaffolds today.

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentation

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions