v0.4.1 : Phase 1 complete (17/17) - dashboard TUI (#33), favoris/notes/tags (#39), profils d'environnement (#40), completions dynamiques + man pages (#41), packaging officiel + CI (#42), self-update Gitea, state v3, 212 tests
This commit is contained in:
+84
-2
@@ -105,6 +105,65 @@ pub enum Command {
|
||||
#[arg(long, value_name = "SECS", default_value = "5")]
|
||||
interval: u64,
|
||||
},
|
||||
/// Live TUI dashboard: overview, activity, stats, sessions, projects
|
||||
Dashboard,
|
||||
/// Mark an agent as a favorite (star in list and status)
|
||||
Favorite {
|
||||
/// Agent name or alias
|
||||
agent: String,
|
||||
},
|
||||
/// Remove the favorite star from an agent
|
||||
Unfavorite {
|
||||
/// Agent name or alias
|
||||
agent: String,
|
||||
},
|
||||
/// Attach a free-form note to an agent (shown in 'am info');
|
||||
/// 'am note <agent>' without text prints the current note
|
||||
Note {
|
||||
/// Agent name or alias
|
||||
agent: String,
|
||||
/// Note text (several words are joined); empty prints the note
|
||||
#[arg(value_name = "TEXT...", num_args = 0..)]
|
||||
text: Vec<String>,
|
||||
},
|
||||
/// Add a personal tag to an agent
|
||||
Tag {
|
||||
/// Agent name or alias
|
||||
agent: String,
|
||||
/// One or more tags to add
|
||||
#[arg(value_name = "TAG", num_args = 1.., required = true)]
|
||||
words: Vec<String>,
|
||||
},
|
||||
/// Remove a personal tag from an agent
|
||||
Untag {
|
||||
/// Agent name or alias
|
||||
agent: String,
|
||||
/// Tag to remove
|
||||
tag: String,
|
||||
},
|
||||
/// List personal tags (with counts), optionally for one agent
|
||||
Tags {
|
||||
/// Only show the tags of this agent
|
||||
agent: Option<String>,
|
||||
},
|
||||
/// Manage environment profiles (dev, prod, ...)
|
||||
#[command(subcommand)]
|
||||
Profile(ProfileCmd),
|
||||
/// Generate a man page for am (or for one command)
|
||||
Man {
|
||||
/// Command name (omit for the whole CLI)
|
||||
command: Option<String>,
|
||||
/// Write the page(s) to this directory instead of stdout
|
||||
#[arg(long, value_name = "DIR")]
|
||||
output: Option<PathBuf>,
|
||||
},
|
||||
/// Internal: list agent names for shell completions (hidden)
|
||||
#[command(name = "_agents", hide = true)]
|
||||
Agents {
|
||||
/// Only installed agents (managed + external), aliases and groups
|
||||
#[arg(long)]
|
||||
installed: bool,
|
||||
},
|
||||
/// Manage command aliases (cc -> claude-code)
|
||||
#[command(subcommand)]
|
||||
Alias(AliasCmd),
|
||||
@@ -249,10 +308,14 @@ pub enum Command {
|
||||
/// Search the catalog by keyword (name, description, category, tags)
|
||||
Search {
|
||||
/// Keyword to search for (case-insensitive substring)
|
||||
keyword: String,
|
||||
#[arg(value_name = "KEYWORD", required_unless_present = "tag")]
|
||||
keyword: Option<String>,
|
||||
/// Restrict to this category
|
||||
#[arg(long, value_name = "CATEGORY")]
|
||||
category: Option<String>,
|
||||
/// Only agents carrying this personal tag
|
||||
#[arg(long, value_name = "TAG")]
|
||||
tag: Option<String>,
|
||||
},
|
||||
/// Search the command history (am and shell commands)
|
||||
History {
|
||||
@@ -321,8 +384,12 @@ pub enum Command {
|
||||
/// Shell to generate completions for
|
||||
#[arg(value_enum, value_name = "SHELL")]
|
||||
shell: Shell,
|
||||
/// Add dynamic completion of the installed agents, aliases and
|
||||
/// groups (queried from 'am _agents' at Tab time)
|
||||
#[arg(long)]
|
||||
installed: bool,
|
||||
},
|
||||
/// Update agent-manager itself from GitHub Releases
|
||||
/// Update agent-manager itself from the latest release
|
||||
SelfUpdate {
|
||||
/// Only check whether a newer version exists
|
||||
#[arg(long)]
|
||||
@@ -370,6 +437,21 @@ pub struct StartArgs {
|
||||
/// Send a desktop notification once the agent has started
|
||||
#[arg(long, action = ArgAction::SetTrue)]
|
||||
pub notify: bool,
|
||||
/// Apply an environment profile (env + args, defined in the config)
|
||||
#[arg(long, value_name = "NAME")]
|
||||
pub profile: Option<String>,
|
||||
}
|
||||
|
||||
/// Environment profile subcommands (issue #40).
|
||||
#[derive(Subcommand, Debug, Clone)]
|
||||
pub enum ProfileCmd {
|
||||
/// List every defined profile
|
||||
List,
|
||||
/// Show one profile in detail (agent, env, args)
|
||||
Show {
|
||||
/// Profile name
|
||||
name: String,
|
||||
},
|
||||
}
|
||||
|
||||
/// Secret management subcommands.
|
||||
|
||||
Reference in New Issue
Block a user