Skip to content

File factory from bridge -> ships #8

Description

@FireSquid6

We need a new feature: the armory. The armory consists of:

  • skills
  • plugins
  • dotfiles

Store these as:

data-dir/
   ...
   armory/
     skills/
       ...
     plugins/
       [provider]/
          ...
     dotfiles/
       ...
     dotfile-map.json
     

These are stored inside of the data directory of the bridge. The bridge will inform the ship whenever the state of these changes, and the ship will query the files to put them in place.

Do not worry about being able to edit these with the CLI/web client--the user should manually edit them in the bridge's directory (or sync it from git). In the web client add another page under ships called "Armory" that allows browsing and viewing these files (but not editing) as well as a way to do the same under the client cli.

Skills

Each skill should follow the standard skill schema inside of its own directory and be automatically installed to each provider by the ship (using the way we have already developed).

Plugins

Plugins are not cross-provider: each provider has its own directory of plugins. The fleet ship should simply handle downloading the plugin from the bridge and placing it in the correct place, since many providers are complicated.

Dotfiles

This is for stuff like the .tmux.conf, your claude config file, or neovim config. The dotfile-map.json should contain a map of what files should go where. The ship should sync the dotfiles to its own directory, and then symlink them to the proper places based on the dotfile-map.json. Both directories and files are allowed here.

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

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions