vibe-action 0.1.5

Command router — execute shell commands and LLM prompts via simple YAML actions.
name: scan
about: Scan project codebase and export as structured JSON
notify: true

args:
  - name: path
    short: p
    input: string
    default: .
    help: Project path

actions:
  # Validate path is a directory
  - tag: tag_validate
    run: cmd
    expect: string
    action:
      - when: '{path|is_dir}'
        then: echo "{path}"
      - when: '{path|is_dir:not}'
        then: echo "'{path}' is not a directory" && exit 1

  # Resolve to absolute path
  - tag: tag_resolve
    run: value
    expect: string
    action: '{tag_validate|resolve}'

  # Scan project files and parse AST
  - tag: tag_ast
    run: value
    expect: list
    action: '{tag_resolve|scan|ast}'

  # Format as JSON array
  - tag: tag_json
    run: value
    expect: string
    action: '{tag_ast|trim|format:json}'

  # Save to file with timestamp
  - tag: tag_save
    run: cmd
    expect: string
    action: |
      printf '%s' '{tag_json|clipboard}' > {system_dir_download}/vibe-export-{system_pid}.json
      echo "Saved to {system_dir_download}/vibe-export-{system_pid}.json"