diff options
Diffstat (limited to 'makima/src/daemon/cli/red_team.rs')
| -rw-r--r-- | makima/src/daemon/cli/red_team.rs | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/makima/src/daemon/cli/red_team.rs b/makima/src/daemon/cli/red_team.rs new file mode 100644 index 0000000..771aae4 --- /dev/null +++ b/makima/src/daemon/cli/red_team.rs @@ -0,0 +1,26 @@ +//! Red Team subcommand - adversarial review notification commands. + +use crate::daemon::api::{ApiClient, RedTeamNotifyRequest}; +use super::RedTeamNotifyArgs; + +/// Handle the red-team notify command. +pub async fn handle_notify(args: RedTeamNotifyArgs) -> Result<(), Box<dyn std::error::Error + Send + Sync>> { + let client = ApiClient::new(args.api_url, args.api_key)?; + + // Use --task if provided, otherwise fall back to MAKIMA_TASK_ID + let related_task_id = args.task; + + let req = RedTeamNotifyRequest { + message: args.message, + severity: args.severity, + related_task_id, + file_path: args.file, + context: args.context, + }; + + eprintln!("Sending red team notification..."); + let result = client.red_team_notify(req).await?; + println!("{}", serde_json::to_string(&result.0)?); + + Ok(()) +} |
