MCPcopy Create free account
hub / github.com/compozy/agh / newMemoryEditCommand

Function newMemoryEditCommand

internal/cli/memory.go:300–355  ·  view source on GitHub ↗
(deps commandDeps)

Source from the content-addressed store, hash-verified

298}
299
300func newMemoryEditCommand(deps commandDeps) *cobra.Command {
301 var flags memorySelectorFlags
302 var typeRaw string
303 var name string
304 var description string
305 var contentFlag string
306 var dryRun bool
307
308 cmd := &cobra.Command{
309 Use: "edit <filename> --content <@file|text>",
310 Short: "Edit a Memory v2 entry through the controller",
311 Args: exactOneNonBlankArg(),
312 RunE: func(cmd *cobra.Command, args []string) error {
313 client, err := clientFromDeps(deps)
314 if err != nil {
315 return err
316 }
317 selector, err := resolveMemorySelectorFlags(deps, flags, memorySelectorOptions{DefaultWorkspace: true})
318 if err != nil {
319 return err
320 }
321 typ, err := parseOptionalMemoryType(typeRaw)
322 if err != nil {
323 return err
324 }
325 content, err := resolveMemoryContent(cmd, deps, contentFlag)
326 if err != nil {
327 return err
328 }
329 response, err := client.EditMemory(cmd.Context(), strings.TrimSpace(args[0]), MemoryEditRequest{
330 Scope: selector.Scope,
331 WorkspaceID: selector.WorkspaceID,
332 AgentName: selector.AgentName,
333 AgentTier: selector.AgentTier,
334 Type: typ,
335 Name: strings.TrimSpace(name),
336 Description: strings.TrimSpace(description),
337 Content: content,
338 DryRun: dryRun,
339 })
340 if err != nil {
341 return err
342 }
343 return writeCommandOutput(cmd, memoryMutationBundle("Memory Edit", response))
344 },
345 }
346 addMemorySelectorFlags(cmd, &flags)
347 cmd.Flags().StringVar(&typeRaw, memoryTypeKey, "", "Memory type override")
348 cmd.Flags().StringVar(&name, automationNameKey, "", "Memory display name override")
349 cmd.Flags().StringVar(&description, memoryDescriptionKey, "", "Memory description override")
350 cmd.Flags().
351 StringVar(&contentFlag, memoryContentKey, "", "Memory content; use @file to read from disk or - for stdin")
352 cmd.Flags().BoolVar(&dryRun, "dry-run", false, "Ask the controller for a decision without applying it")
353 mustMarkFlagRequired(cmd, memoryContentKey)
354 return cmd
355}
356
357func newMemoryDeleteCommand(deps commandDeps) *cobra.Command {

Callers 1

newMemoryCommandFunction · 0.85

Calls 10

exactOneNonBlankArgFunction · 0.85
clientFromDepsFunction · 0.85
parseOptionalMemoryTypeFunction · 0.85
resolveMemoryContentFunction · 0.85
writeCommandOutputFunction · 0.85
memoryMutationBundleFunction · 0.85
addMemorySelectorFlagsFunction · 0.85
mustMarkFlagRequiredFunction · 0.85
EditMemoryMethod · 0.65

Tested by

no test coverage detected