{"_id":"@agentarea/cli","name":"@agentarea/cli","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@agentarea/cli","version":"0.1.0","description":"Interactive CLI for AgentArea — authenticate, discover agents, submit tasks, and monitor real-time execution via SSE.","license":"Apache-2.0","author":{"name":"AgentArea"},"homepage":"https://github.com/agentarea/agentarea/tree/main/agentarea-cli#readme","repository":{"type":"git","url":"git+https://github.com/agentarea/agentarea.git","directory":"agentarea-cli"},"bugs":{"url":"https://github.com/agentarea/agentarea/issues"},"keywords":["agentarea","cli","agents","ai","ink","sse"],"bin":{"agentarea":"dist/cli.js"},"type":"module","engines":{"node":">=16"},"publishConfig":{"access":"public"},"dependencies":{"ink":"^4.1.0","meow":"^11.0.0","react":"^18.2.0","axios":"^1.16.1","eventsource":"^2.0.2","@zowe/secrets-for-zowe-sdk":"^8.8.3","async-exit-hook":"^2.0.1","conf":"^12.0.0"},"devDependencies":{"@sindresorhus/tsconfig":"^8.1.0","@types/react":"^18.0.32","@types/node":"^20.0.0","@types/eventsource":"^1.1.11","@vdemedes/prettier-config":"^2.0.1","ava":"^5.2.0","chalk":"^5.2.0","eslint":"^9.39.4","eslint-config-xo-react":"^0.30.1","eslint-plugin-react":"^7.37.5","eslint-plugin-react-hooks":"^7.0.1","ink-testing-library":"^3.0.0","prettier":"^2.8.7","ts-node":"^10.9.2","typescript":"^5.9.3","webpack":"^5.106.1","xo":"^0.61.1"},"ava":{"extensions":{"ts":"module","tsx":"module"},"nodeArguments":["--loader=ts-node/esm"]},"xo":{"react":true,"semicolon":true,"prettier":true,"rules":{"react/prop-types":"off","unicorn/expiring-todo-comments":"off"}},"prettier":"@vdemedes/prettier-config","overrides":{"@eslint/plugin-kit@<0.3.4":"0.7.1","axios@>=1.0.0 <1.15.2":"1.16.1","brace-expansion@<1.1.13":"1.1.14","brace-expansion@>=4.0.0 <5.0.6":"5.0.6","diff@>=4.0.0 <4.0.4":"4.0.4","fast-uri@<=3.1.1":"3.1.2","json-schema-typed@8.0.1":"8.0.2","minimatch@>=3.0.0 <3.1.5":"3.1.5","ws@>=8.0.0 <8.20.1":"8.21.0"},"scripts":{"build":"tsc","dev":"tsc --watch","typecheck":"tsc --noEmit","lint":"prettier --check . && xo","test":"prettier --check . && tsc --noEmit"},"_id":"@agentarea/cli@0.1.0","_integrity":"sha512-6iKFo7VhoMQZLp8Z7DdFrvmXJGXcXC9Bef5wxzqBPIGKq0O8zZdqS8x+F8bHosQNj8xpfZzQy9Ko1JDGAPl06Q==","_resolved":"/tmp/20d31a8dad6c85c88475ea17b5eee7d4/agentarea-cli-0.1.0.tgz","_from":"file:agentarea-cli-0.1.0.tgz","_nodeVersion":"20.20.2","_npmVersion":"10.8.2","dist":{"integrity":"sha512-6iKFo7VhoMQZLp8Z7DdFrvmXJGXcXC9Bef5wxzqBPIGKq0O8zZdqS8x+F8bHosQNj8xpfZzQy9Ko1JDGAPl06Q==","shasum":"28be0e927861d573c60f7894b12930785f475cf0","tarball":"https://registry.npmjs.org/@agentarea/cli/-/cli-0.1.0.tgz","fileCount":110,"unpackedSize":240447,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@agentarea%2fcli@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCID3ogQ0YAiZGjtCthQr0J3qsYMxYGKCQgXO2jNFSrnxxAiEAuLYf9q6zdAWoxhD3W76VRDaHPb1BN+qP3EXTVp+MOaA="}]},"_npmUser":{"name":"jamakase","email":"jamakase54@gmail.com"},"directories":{},"maintainers":[{"name":"38766038","email":"artem.astapenko@agentarea.ai"},{"name":"jamakase","email":"jamakase54@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/cli_0.1.0_1781460910405_0.9994480999908895"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-14T18:15:10.307Z","0.1.0":"2026-06-14T18:15:10.537Z","modified":"2026-06-14T18:15:10.921Z"},"maintainers":[{"name":"38766038","email":"artem.astapenko@agentarea.ai"},{"name":"jamakase","email":"jamakase54@gmail.com"}],"description":"Interactive CLI for AgentArea — authenticate, discover agents, submit tasks, and monitor real-time execution via SSE.","homepage":"https://github.com/agentarea/agentarea/tree/main/agentarea-cli#readme","keywords":["agentarea","cli","agents","ai","ink","sse"],"repository":{"type":"git","url":"git+https://github.com/agentarea/agentarea.git","directory":"agentarea-cli"},"author":{"name":"AgentArea"},"bugs":{"url":"https://github.com/agentarea/agentarea/issues"},"license":"Apache-2.0","readme":"# agentarea-cli\n\nInteractive CLI for Agent Management using Ink. Authenticate, discover agents, submit tasks, and monitor real-time execution output via Server-Sent Events (SSE).\n\n## Features\n\n- 🔐 **Authentication**: Secure login with token persistence in OS keychain\n- 👥 **Agent Discovery**: List and filter available agents by status and capabilities\n- 📋 **Task Submission**: Submit tasks with configurable parameters to agents\n- 🔄 **Real-time Streaming**: Monitor task execution with live output streaming via SSE\n- ⌨️ **Interactive CLI**: Responsive Ink-based interface with keyboard navigation\n- 🛡️ **Error Handling**: Graceful error handling with user-friendly messages\n\n## Installation\n\n```bash\n# Install globally\nnpm install --global agentarea-cli\n\n# Or run locally\nnpm install\nnpm run build\nnpm start\n```\n\n## Quick Start\n\n```bash\n$ agentarea-cli\n\n# First time: You'll be prompted to login\n[?] Email: your.email@example.com\n[?] Password: ••••••••\n\n# Then: Select an agent and submit a task\n[?] Select agent: Agent-1 (online)\n[?] Task title: Run Analysis\n[?] Parameters: {\"dataset\": \"data.csv\"}\n\n# Finally: Watch real-time output\nRunning analysis...\nProcessing: 50%\n✓ Analysis complete!\n```\n\n## Usage\n\n### Login\n\n```bash\n$ agentarea-cli\n# Prompts for email and password\n# Token stored securely in OS keychain\n```\n\n### List Agents\n\nAfter login, select \"List Agents\" to:\n\n- View all available agents\n- See agent status (online/offline/busy)\n- View agent capabilities\n- Filter by status or search by name\n\n### Submit Task\n\nAfter selecting an agent:\n\n1. Enter task title\n2. Provide task description (optional)\n3. Configure parameters\n4. Confirm submission\n\n### Monitor Execution\n\nOnce task is submitted:\n\n- Real-time stdout/stderr output displayed\n- Progress indicators updated\n- Status changes shown\n- Completion or failure reported\n\n## Configuration\n\nCreate a `.env` file based on `.env.example`:\n\n```bash\n# API Configuration\nAPI_URL=http://localhost:3000\nAPI_TIMEOUT=30000\nMAX_RETRIES=3\n\n# Logging\nLOG_LEVEL=info\n\n# UI\nTHEME=auto\n```\n\n## Development\n\n```bash\n# Install dependencies\nnpm install\n\n# Watch mode\nnpm run dev\n\n# Build\nnpm run build\n\n# Test\nnpm test\n\n# Lint and format\nnpm run test\n```\n\n## Architecture\n\n```\nsource/\n├── cli.tsx              # CLI entry point with meow parser\n├── app.tsx              # Main application component\n├── components/          # Ink UI components\n├── services/            # API clients and business logic\n├── hooks/               # React hooks for state management\n├── context/             # React context providers\n├── utils/               # Utility functions\n└── types/               # TypeScript type definitions\n```\n\n## API Requirements\n\nThe CLI expects the following API endpoints:\n\n### Authentication\n\n- `POST /auth/login` - Login with credentials\n- `POST /auth/refresh` - Refresh access token\n- `POST /auth/logout` - Logout and invalidate token\n\n### Agents\n\n- `GET /agents` - List available agents\n- `GET /agents/{agentId}` - Get agent details\n- `GET /agents/{agentId}/capabilities` - Get agent capabilities\n\n### Tasks\n\n- `POST /tasks` - Submit a new task\n- `GET /tasks` - List tasks\n- `GET /tasks/{taskId}` - Get task details\n- `DELETE /tasks/{taskId}` - Cancel a task\n- `GET /sse/tasks/{taskId}` - SSE stream for task output\n\n## Authentication\n\nCredentials are stored securely:\n\n- **macOS**: Keychain\n- **Linux**: Secret Service (requires `libsecret`)\n- **Windows**: Credential Manager\n\nToken is automatically:\n\n- Retrieved on app startup\n- Refreshed before expiration\n- Cleared on logout\n\n## Keyboard Shortcuts\n\n| Key    | Action           |\n| ------ | ---------------- |\n| ↑/↓    | Navigate options |\n| Enter  | Select/Submit    |\n| q      | Back to menu     |\n| Escape | Cancel           |\n| Ctrl+C | Exit CLI         |\n\n## Testing\n\n```bash\n# Run all tests\nnpm test\n\n# Watch mode\nnpm run test -- --watch\n\n# With coverage\nnpm run test -- --coverage\n```\n\n## Troubleshooting\n\n### \"Cannot find module\"\n\n```bash\nnpm install\nnpm run build\n```\n\n### Keychain errors\n\n```bash\n# Linux: Install libsecret\nsudo apt-get install libsecret-1-dev\n\n# Then rebuild\nnpm rebuild\n```\n\n### API connection errors\n\n1. Check API_URL in .env\n2. Verify API server is running\n3. Check network connectivity\n4. Enable debug logging: `LOG_LEVEL=debug`\n\n## License\n\nMIT\n\n## See Also\n\n- [Feature Specification](../specs/001-ink-cli/spec.md)\n- [Implementation Plan](../specs/001-ink-cli/plan.md)\n- [API Contracts](../specs/001-ink-cli/contracts/)\n- [Data Model](../specs/001-ink-cli/data-model.md)\n","readmeFilename":"readme.md","_rev":"1-3529f85b0619cdae1f9988a90de4fd93"}