{"_id":"@aigraphia/cli","_rev":"2-3b3db7b149a3a490997a2a5128701a25","name":"@aigraphia/cli","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.0":{"name":"@aigraphia/cli","version":"1.0.0","keywords":["aigp","cli","diagrams","command-line"],"author":{"name":"AIGP Contributors"},"license":"MIT","_id":"@aigraphia/cli@1.0.0","maintainers":[{"name":"tongzhouit","email":"tongzhouit@gmail.com"}],"homepage":"https://github.com/aigp/aigp/tree/main/packages/cli","bugs":{"url":"https://github.com/aigp/aigp/issues"},"bin":{"aigp":"dist/index.js"},"dist":{"shasum":"8a69e8be0caf1539bae1c71e6e9e51659a640306","tarball":"https://registry.npmjs.org/@aigraphia/cli/-/cli-1.0.0.tgz","fileCount":23,"integrity":"sha512-Kl8zN9U8KZV6Mqfve/q8AXbidiXQ8umY83EqJ9IqbX5K1B0waA52EA82wGSvYW8SrIEJxn83Z6F7+pio4XlfiQ==","signatures":[{"sig":"MEUCIDEAclhOP3SOjz9SdAbB2EuxOjUbCkj2fKH1eJiCPckxAiEA3B9GopfFUabTyhy9k0k1b83FBGcisZH33KGPWsYO060=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24972},"main":"dist/index.js","type":"module","_from":"file:aigraphia-cli-1.0.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=18"},"scripts":{"dev":"tsc --watch","lint":"eslint src/","test":"vitest","build":"tsc","clean":"rm -rf dist"},"_npmUser":{"name":"tongzhouit","email":"tongzhouit@gmail.com"},"_resolved":"/private/var/folders/tz/wk23tz3n3nj9k1hkm09y9qb00000gp/T/540ffc393a5d5ea1f800de64608a7f2e/aigraphia-cli-1.0.0.tgz","_integrity":"sha512-Kl8zN9U8KZV6Mqfve/q8AXbidiXQ8umY83EqJ9IqbX5K1B0waA52EA82wGSvYW8SrIEJxn83Z6F7+pio4XlfiQ==","repository":{"url":"git+https://github.com/aigp/aigp.git","type":"git","directory":"packages/cli"},"_npmVersion":"10.8.2","description":"CLI tool for AIGP","directories":{},"_nodeVersion":"20.20.0","dependencies":{"ora":"^9.3.0","chalk":"^5.6.2","inquirer":"^13.3.0","commander":"^14.0.3","@aigraphia/export":"1.0.0","@aigraphia/layout":"1.0.0","@aigraphia/plugins":"1.0.0","@aigraphia/protocol":"1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.0","typescript":"^5.9.3","@types/node":"^25.5.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_1.0.0_1773551598286_0.9131136584933421","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@aigraphia/cli","version":"1.0.1","description":"CLI tool for AIGP","type":"module","main":"dist/index.js","types":"./dist/index.d.ts","bin":{"aigp":"dist/index.js"},"scripts":{"build":"tsc","dev":"tsc --watch","test":"vitest","lint":"eslint src/","clean":"rm -rf dist"},"dependencies":{"@aigraphia/export":"workspace:*","@aigraphia/layout":"workspace:*","@aigraphia/plugins":"workspace:*","@aigraphia/protocol":"workspace:*","chalk":"^5.6.2","commander":"^14.0.3","inquirer":"^13.3.0","ora":"^9.3.0"},"devDependencies":{"@types/node":"^25.5.0","typescript":"^5.9.3","vitest":"^4.1.0"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/AIGraphia/aigp.git","directory":"packages/cli"},"bugs":{"url":"https://github.com/AIGraphia/aigp/issues"},"homepage":"https://github.com/AIGraphia/aigp/tree/main/packages/cli","author":{"name":"AIGP Contributors"},"engines":{"node":">=18"},"license":"MIT","keywords":["aigp","cli","diagrams","command-line"],"gitHead":"62e6ad39eebf6117ca239826a5c4bf5cb9f69956","_id":"@aigraphia/cli@1.0.1","_nodeVersion":"24.14.0","_npmVersion":"11.9.0","dist":{"integrity":"sha512-xxSgLlYq7vhN6mQd7yoC72QJibT0exLRqCaO7wRRoxxc7vtIPaPOJPkTx7u3NxiO48ZUyX2GJsPnG+U+v0WmNg==","shasum":"2b7ab993246c28258b02fdd5f78c2984635f8920","tarball":"https://registry.npmjs.org/@aigraphia/cli/-/cli-1.0.1.tgz","fileCount":23,"unpackedSize":25012,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aigraphia%2fcli@1.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDx6RH0ls0yFWmmyhnpd6otZtDvPhTwaUvG7O9jlE25CQIhAMzwiUujKnhs9J5oUxInxehiye3UL7ezIxBW6bYo+XHK"}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:58445e9b-cebd-48d7-b301-2e92184f0db8"}},"directories":{},"maintainers":[{"name":"tongzhouit","email":"tongzhouit@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/cli_1.0.1_1773577124991_0.451873531358129"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-15T05:13:18.203Z","modified":"2026-03-15T12:18:45.401Z","1.0.0":"2026-03-15T05:13:18.444Z","1.0.1":"2026-03-15T12:18:45.133Z"},"bugs":{"url":"https://github.com/AIGraphia/aigp/issues"},"author":{"name":"AIGP Contributors"},"license":"MIT","homepage":"https://github.com/AIGraphia/aigp/tree/main/packages/cli","keywords":["aigp","cli","diagrams","command-line"],"repository":{"type":"git","url":"git+https://github.com/AIGraphia/aigp.git","directory":"packages/cli"},"description":"CLI tool for AIGP","maintainers":[{"name":"tongzhouit","email":"tongzhouit@gmail.com"}],"readme":"# @aigraphia/cli\n\nCommand-line interface for working with AIGP diagrams.\n\n## Installation\n\n```bash\npnpm add -g @aigraphia/cli\n```\n\nOr use with pnpm dlx:\n\n```bash\npnpm dlx @aigraphia/cli [command]\n```\n\n## Commands\n\n### `aigp init [type] [name]`\n\nInitialize a new diagram with optional type and name.\n\n**Examples:**\n\n```bash\n# Interactive mode - prompts for type and name\naigp init\n\n# Create a flowchart diagram\naigp init flowchart my-diagram\n\n# Create a sequence diagram\naigp init sequence user-flow\n```\n\n### `aigp validate <file>`\n\nValidate an AIGP diagram file against the schema.\n\n**Examples:**\n\n```bash\n# Validate a diagram file\naigp validate my-diagram.json\n\n# Validate a JSON file\naigp validate diagram.json\n```\n\n### `aigp types`\n\nList all available diagram types supported by AIGP.\n\n**Output includes:**\n- Diagram type ID\n- Display name\n- Description\n- Node types available\n- Edge types available\n\n**Example:**\n\n```bash\naigp types\n```\n\n### `aigp export svg <input> [options]`\n\nExport an AIGP diagram to SVG format.\n\n**Arguments:**\n- `<input>` - Input AIGP diagram file (.json or .json)\n\n**Options:**\n- `-o, --output <file>` - Output SVG file (default: input.svg)\n- `-w, --width <pixels>` - SVG width (default: 800)\n- `-h, --height <pixels>` - SVG height (default: 600)\n- `-p, --padding <pixels>` - Padding around diagram (default: 20)\n- `-b, --background <color>` - Background color (default: #ffffff)\n- `--no-viewbox` - Disable viewBox attribute\n\n**Examples:**\n\n```bash\n# Export to SVG with default settings\naigp export svg diagram.json\n\n# Export with custom dimensions\naigp export svg diagram.json -w 1200 -h 800\n\n# Export with custom output path\naigp export svg diagram.json -o output/diagram.svg\n\n# Export with transparent background\naigp export svg diagram.json -b transparent\n\n# Export with custom padding\naigp export svg diagram.json -p 40\n```\n\n### `aigp export png <input> [options]`\n\nExport an AIGP diagram to PNG format (or JPEG/WebP).\n\n**Arguments:**\n- `<input>` - Input AIGP diagram file (.json or .json)\n\n**Options:**\n- `-o, --output <file>` - Output PNG file (default: input.png)\n- `-w, --width <pixels>` - Image width (default: 800)\n- `-h, --height <pixels>` - Image height (default: 600)\n- `-p, --padding <pixels>` - Padding around diagram (default: 20)\n- `-b, --background <color>` - Background color (default: #ffffff)\n- `-s, --scale <factor>` - Scale factor for retina displays (default: 2)\n- `-q, --quality <percent>` - Image quality 1-100 (default: 90)\n- `-f, --format <type>` - Output format: png, jpeg, webp (default: png)\n\n**Examples:**\n\n```bash\n# Export to PNG with default settings (2x scale)\naigp export png diagram.json\n\n# Export with custom dimensions\naigp export png diagram.json -w 1600 -h 1200\n\n# Export as JPEG with 85% quality\naigp export png diagram.json -o diagram.jpg -f jpeg -q 85\n\n# Export as WebP\naigp export png diagram.json -o diagram.webp -f webp\n\n# Export with 3x scale for extra high quality\naigp export png diagram.json -s 3\n\n# Export with custom output path\naigp export png diagram.json -o exports/diagram.png\n```\n\n## Usage Examples\n\n### Create and Export a Flowchart\n\n```bash\n# Initialize a flowchart\naigp init flowchart my-flow\n\n# Edit the generated file (my-flow.json)\n# ... add your nodes and edges ...\n\n# Validate the diagram\naigp validate my-flow.json\n\n# Export to SVG\naigp export svg my-flow.json\n\n# Export to PNG\naigp export png my-flow.json\n```\n\n### Batch Export\n\n```bash\n# Export all diagrams in a directory to SVG\nfor file in *.json; do\n  aigp export svg \"$file\"\ndone\n\n# Export all diagrams to PNG with high quality\nfor file in *.json; do\n  aigp export png \"$file\" -s 3 -q 95\ndone\n```\n\n### Export for Web and Print\n\n```bash\n# Web version (optimized size)\naigp export png diagram.json -o web/diagram.png -w 800 -s 2\n\n# Print version (high quality)\naigp export png diagram.json -o print/diagram.png -w 3000 -s 1 -q 100\n```\n\n## Global Options\n\nAll commands support:\n- `--help` - Display help information\n\n## File Formats\n\n### Input Files\n\nThe CLI accepts two input formats:\n- `.json` - AIGP Format (recommended)\n- `.json` - Standard JSON format\n\nBoth formats must conform to the AIGP schema.\n\n### Output Files\n\nExport commands support:\n- `.svg` - Scalable Vector Graphics\n- `.png` - Portable Network Graphics\n- `.jpg` / `.jpeg` - JPEG images\n- `.webp` - WebP images\n\n## Exit Codes\n\n- `0` - Success\n- `1` - Error (validation failure, file not found, etc.)\n\n## Environment Variables\n\nNone currently used.\n\n## Dependencies\n\nThe CLI integrates these AIGP packages:\n- `@aigraphia/protocol` - Core protocol definitions\n- `@aigraphia/plugins` - Diagram type plugins\n- `@aigraphia/layout` - Layout engines\n- `@aigraphia/export` - SVG and PNG export\n- `@aigraphia/converters` - Format converters\n\n## Development\n\n```bash\n# Install dependencies\npnpm install\n\n# Build the CLI\npnpm build\n\n# Run tests\npnpm test\n\n# Link for local development\npnpm link --global\n\n# Test locally\naigp --help\n```\n\n## Contributing\n\nSee [CONTRIBUTING.md](../../CONTRIBUTING.md) for guidelines.\n\n## License\n\nMIT - See LICENSE file for details\n\n## Related Packages\n\n- `@aigraphia/protocol` - Core protocol definitions\n- `@aigraphia/plugins` - Diagram type plugins\n- `@aigraphia/layout` - Layout algorithms\n- `@aigraphia/export` - SVG and PNG export\n- `@aigraphia/converters` - Format converters\n","readmeFilename":"README.md"}