(cmd *cobra.Command, flags *spawnCommandFlags)
| 59 | } |
| 60 | |
| 61 | func registerSpawnFlags(cmd *cobra.Command, flags *spawnCommandFlags) { |
| 62 | cmd.Flags().StringVar(&flags.agentName, "agent", "", "Child agent name") |
| 63 | cmd.Flags().StringVar(&flags.provider, "provider", "", "Optional provider override") |
| 64 | cmd.Flags().StringVar(&flags.model, "model", "", "Optional model override") |
| 65 | cmd.Flags().StringVar(&flags.name, "name", "", "Optional child session display name") |
| 66 | cmd.Flags().StringVar(&flags.promptOverlay, "prompt-overlay", "", "Prompt overlay for the child session") |
| 67 | cmd.Flags().StringVar(&flags.spawnRole, "role", "worker", "Child spawn role") |
| 68 | cmd.Flags().Int64Var(&flags.ttlSeconds, "ttl-seconds", 0, "Mandatory child TTL in seconds") |
| 69 | cmd.Flags().BoolVar(&flags.autoStopOnParent, "auto-stop-on-parent", true, "Stop the child when the parent stops") |
| 70 | cmd.Flags().StringArrayVar(&flags.tools, "tool", nil, "Allowed tool atom (repeatable)") |
| 71 | cmd.Flags().StringArrayVar(&flags.skills, "skill", nil, "Allowed skill atom (repeatable)") |
| 72 | cmd.Flags().StringArrayVar(&flags.mcpServers, "mcp-server", nil, "Allowed MCP server id (repeatable)") |
| 73 | cmd.Flags(). |
| 74 | StringArrayVar(&flags.workspacePaths, "workspace-path", nil, "Allowed workspace path grant (repeatable)") |
| 75 | cmd.Flags().StringArrayVar(&flags.networkChannels, "channel", nil, "Allowed network channel grant (repeatable)") |
| 76 | cmd.Flags().StringArrayVar( |
| 77 | &flags.sandboxProfiles, |
| 78 | "sandbox-profile", |
| 79 | nil, |
| 80 | "Allowed sandbox profile grant (repeatable)", |
| 81 | ) |
| 82 | cmd.Flags().StringVar(&flags.idempotencyKey, "idempotency-key", "", "Optional idempotency key") |
| 83 | mustMarkFlagRequired(cmd, "agent") |
| 84 | mustMarkFlagRequired(cmd, "ttl-seconds") |
| 85 | } |
| 86 | |
| 87 | func runSpawnCommand(deps commandDeps, flags *spawnCommandFlags) func(*cobra.Command, []string) error { |
| 88 | return func(cmd *cobra.Command, _ []string) error { |
no test coverage detected