Skip to content

Generated-package templates: content-based deployment plan #18

Description

@diegohb

What to build

The installer template reads the content declaration and enforces the binary deployment plan (ADR-0008):

  • Assets-only packages: copy install by default (visible, editable skills/commands, no config change); --mode plugin opts into registration
  • Code-backed packages: plugin registration mandatory; --mode copy errors

The surgical editor is ported into the self-contained template (preserving its load-bearing notes), the manifest generalizes to record registration (mode, entry string, target config file), the allowed config patterns and create-default apply, and status/uninstall reflect mode, version, and registration.

The load-time hook and registration detector stay aligned with the generalized model: detection is read-only (both bases, repo root, both extensions, plus global config.json), the hook never edits the plugin array, it ensures assets only in registered scopes, and the zero-write no-op includes a present entry. Startup non-interference holds: the whole hook body degrades to a warning plus advisory, never throws.

Acceptance criteria

  • Generated assets-only package: default install copies skills/commands and touches no config; --mode plugin adds the entry + manifest
  • Generated code-backed package: install adds the entry; --mode copy errors
  • Copy installs still skip consumer-modified files unless --force
  • Hook performs zero writes when the manifest matches and the entry is present; failures degrade to warning + advisory
  • Registration detection covers both bases, repo root, both extensions, and global config.json
  • Generated CLI status/uninstall reflect mode, version, and registration file

Blocked by

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    ready-for-agentFully specified, ready for an AFK agent

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions