Port mesa-cli to TypeScript with new workflow commands#14
Open
itsdarrylnorris wants to merge 7 commits intomasterfrom
Open
Port mesa-cli to TypeScript with new workflow commands#14itsdarrylnorris wants to merge 7 commits intomasterfrom
itsdarrylnorris wants to merge 7 commits intomasterfrom
Conversation
- Add tsconfig.json with strict mode and noUnusedLocals/Parameters - Convert cli.js to TypeScript with full type definitions - Convert generate-fields.js to TypeScript - Add type definitions for all API responses, config, and CLI options - Update package.json with modern dependencies (axios 1.x, commander 12.x) - Add yaml package for config parsing (replaces config-yml) - Add open package for browser launching - Create modular structure: src/types, src/lib, src/commands - Add docs/auth-investigation.md with findings on current auth The CLI now builds with zero TypeScript errors under strict mode. All existing commands preserved: push, pull, watch, export, install, test, replay, logs. New auth command structure added for upcoming browser-based authentication flow.
- Add smoke tests for config module (loadConfig, ConfigError, etc) - Add tests for type guards (isObject, isArray, isMesaConfig, etc) - Fix auth endpoint URLs to use .json suffix - Update README with comprehensive documentation: - Installation instructions - Quick start guide - All commands with examples - Configuration options - Development instructions - Troubleshooting section
- Add interactive searchable list when running `mesa logs` without arguments - Show automation name, status (enabled/disabled), last run time, and ID - Type to filter automations by name or ID - Add "All automations" option to view all logs - Fix automation_id filtering in MESA API (read from GET params) - Add @inquirer/prompts dependency for interactive prompts - Remove investigation docs
- Add workflow list, enable, disable, test, step-test, activity, and time-travel commands - Add interactive workflow picker and test payload picker - Add test runner with polling and result formatting - Add table formatting utility with cli-table3 - Extend client with Admin API operations for workflow management - Add ora spinner for better UX during async operations - Add CLAUDE.md project documentation Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add documentation for: - workflow list - list all workflows - workflow enable/disable - manage workflow state - workflow test - run full workflow tests - workflow step test - run step tests - workflow activity - view recent executions - workflow debug - manage debug logging - workflow time-travel - backfill operations Update project structure to reflect new files. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR is a complete rewrite of mesa-cli from JavaScript to TypeScript, adding comprehensive workflow management commands and improving the overall developer experience.
Major Changes
New Commands
mesa workflow listmesa workflow enablemesa workflow disablemesa workflow testmesa workflow step testmesa workflow activitymesa workflow debug enable/disable/statusmesa workflow time-travelmesa workflow createmesa logsmesa cache clear/statusNew Features
--jsonfor CI/scriptingTechnical Improvements
src/commands/src/lib/(client, config, table, pickers)src/types/index.tsNew Dependencies
cli-table3- Table formattingora- Spinner/progress indicators@inquirer/prompts- Interactive promptsFiles Changed
src/*.test.ts)Test plan
npm run build- verify TypeScript compilesnpm test- verify all tests passnpm run typecheck- verify no type errorsmesa auth login- verify OAuth flow worksmesa workflow list- verify workflows are listedmesa workflow test <id>- verify test execution worksmesa workflow debug enable <id>- verify debug toggle works--jsonflag for CI compatibility🤖 Generated with Claude Code