Add project processes/notifications commands and enhance service list#242
Open
Add project processes/notifications commands and enhance service list#242
Conversation
Add two new subcommands under 'zcli project': - `project processes`: Lists running and pending processes for a project, showing process ID, action, status, services, creator, and creation time. Results limited to 100, sorted by creation time descending. - `project notifications`: Lists notifications for a project with pagination support (--limit, --offset flags). Shows notification ID, action, type, services, creator, creation time, and acknowledgment status. Changes include: - New Process entity fields (Created, LastUpdate, Started, CreatedByUser, ServiceNames, CreatedBySystem) and ProcessFields variable - New UserNotification entity with repository functions - New uxHelpers for rendering process and notification tables - Shared DateTimeFormat constant in styles package - i18n translations for all new commands and messages Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Extend 'zcli service list' command to display the active app version ID and creation timestamp for each service. Changes: - Add ActiveAppVersionId and ActiveAppVersionCreated fields to Service entity - Map ActiveAppVersion from EsServiceStack in serviceFromEsSearch - Update service list table to show 'app version id' and 'app version created' columns, displaying '-' when no active version exists - Normalize table headers to lowercase for consistency Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add comprehensive developer documentation for Claude Code assistance, covering project architecture, command framework, entity models, UX components, build/release process, and common development patterns. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Display running and pending processes when listing services, giving users a complete operational view of their project. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Support table (default) and json output formats for `zcli service list`. JSON output includes both services and running processes in a structured format. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add type field to service list output (table and JSON) - Align JSON keys with table headers (snake_case) - Suppress version check and config file warnings for --format json - Rename JSON fields: actionName→action, serviceNames→services 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
zcli project processescommand to list running and pending processes for a projectzcli project notificationscommand to list notifications with pagination supportzcli service listwith active app version info, service type column,--formatflag (table/json), and running processes section--format jsonfor clean machine-readable outputNew Commands
zcli project processesLists all currently RUNNING and PENDING processes for a project (deployments, builds, service starts/stops, etc.).
zcli project notificationsLists notifications for a project with pagination support.
--limit--offsetEnhanced
zcli service listNow includes service type, active app version info, running processes, and a
--formatflag:New table columns:
type,app version id,app version createdRunning/pending processes are displayed below the service table.
JSON output (
--format json){ "services": [ { "id": "...", "name": "api", "type": "nodejs@20", "status": "RUNNING", "appVersionId": "...", "appVersionCreated": "2026-01-25 10:30:00" } ], "processes": [ { "id": "...", "action": "deploy", "status": "RUNNING", "services": ["api"], "createdBy": "user@example.com", "created": "2026-01-25 10:29:00" } ] }When using
--format json, all non-JSON output is suppressed (version check warnings, config file messages, "Selected project" info line).Changes
New Files
src/cmd/projectProcesses.go- Processes commandsrc/cmd/projectNotifications.go- Notifications commandsrc/entity/userNotification.go- UserNotification entitysrc/entity/repository/userNotification.go- Notification repositorysrc/uxHelpers/process.go- Process list renderingsrc/uxHelpers/notification.go- Notification list renderingCLAUDE.md- Developer guideModified Files
src/cmd/project.go- Register new subcommandssrc/cmd/serviceList.go- Add--formatflag, pass config to PrintServiceListsrc/entity/process.go- Add fields (Created, LastUpdate, Started, CreatedByUser, ServiceNames, CreatedBySystem)src/entity/service.go- Add ActiveAppVersionId, ActiveAppVersionCreated fieldssrc/entity/repository/process.go- Add GetRunningAndPendingProcessesByProjectsrc/entity/repository/service.go- Map ActiveAppVersion in serviceFromEsSearchsrc/uxHelpers/service.go- Add type/app version columns, JSON output, processes sectionsrc/uxBlock/styles/styles.go- Add shared DateTimeFormat constantsrc/cmdBuilder/createRunFunc.go- Move flag binding before version check, suppress warnings for JSON formatsrc/cmdBuilder/scopeProject.go- Suppress "Selected project" info for JSON formatsrc/flagParams/handler.go- Suppress "Using config file" message for JSON formatsrc/i18n/en.go- Add translationssrc/i18n/i18n.go- Add i18n constantsTest Plan
zcli project processes -P <project>and verify output shows running/pending processeszcli project notifications -P <project>and verify pagination works with --limit/--offsetzcli service list -P <project>and verify type and app version columns appearzcli service list -P <project> --format jsonand verify clean JSON output (no warnings/info lines)zcli service list -P <project> --format tableand verify table output matches defaultgo build ./...- passesgo test ./src/...- passesmake lint- passes