Skip to content

Projects/workspaces UI, project-bound automations, and cron step workflows - #1

Open
Amantux wants to merge 1 commit into
masterfrom
codex/design-ui/ux-merging-herme-and-openclaws
Open

Amantux wants to merge 1 commit into
masterfrom
codex/design-ui/ux-merging-herme-and-openclaws

Conversation

@Amantux

@Amantux Amantux commented May 31, 2026

Copy link
Copy Markdown
Owner

Motivation

  • Introduce a first-class Projects surface that pairs conversation groups with workspace roots and exposes per-project capability controls.
  • Allow scheduled automations (cron jobs) to bind to Projects, inherit workspace roots, and produce chats filed under a chosen project or left unassigned.
  • Provide a nicer authoring UX for multi-step automations by supporting ordered steps that compile into the single prompt the scheduler runs.

Description

  • API: Added cron/job helpers in api/routes.py including _normalize_cron_steps, _compile_cron_steps_prompt, _cron_project_metadata, and _cron_binding_updates, and enriched cron payloads with project_id, project_name, workspace, automation_steps, automation_context, step_count, and session_project_policy handling; also added project/session counts to GET /api/projects and project workspace validation on create/rename.
  • Models: In api/models.py added a cached cron job lookup and _cron_session_project_id logic so CLI/cron sessions import into the correct project/workspace according to job policy (project / none / cron).
  • UI (static): Updated static/index.html, static/panels.js, static/sessions.js, static/i18n.js, and static/style.css to present a Bauhaus-inspired Projects panel, project setup board, skill context bar, project-bound cron UI (project selector, session policy), a step editor UI for cron automations, session/project chips and counts, and various copy changes (e.g. Spaces -> Projects).
  • UX/JS wiring: Implemented client-side cron project caching, project CRUD hooks, project workspace binding and usage (useProject, newProjectSession), cron step editing/collection (_cronAutomationSteps, _collectCronAutomationSteps), and session creation honoring explicit project_id and workspace options.
  • Tests: Added static integration checks in tests/test_project_workspace_integration_static.py to assert the server and frontend surface the new project/workspace/cron features and fields.

Testing

  • Added tests/test_project_workspace_integration_static.py which performs static assertions against api/routes.py, api/models.py, and static JS/HTML/CSS files to verify new keys, handlers, and UI IDs are present. The new test was executed with pytest -q tests/test_project_workspace_integration_static.py and passed.
  • Ran the repository's existing test scaffolding focused on the changed modules (static checks and API surface assertions) and observed no regressions in the covered assertions.

Codex Task

Copilot AI review requested due to automatic review settings May 31, 2026 20:51

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants