Files
2026-07-24 11:02:27 -05:00

4.5 KiB

mp-silma-ai-aide

Context-aware AI aide — project-agnostic tooling to give Silma better context for supporting any codebase or task.

Development

Install dependencies:

npm ci

Run the Vite dev server:

npm run dev

Run the live local context server when you want newly added local projects to appear in the side panel without rebuilding:

npm run context:serve

Build the Chrome extension:

npm run build

The deployable extension output is dist/. Load dist/ in Chrome as an unpacked extension, or point deployment tooling at that folder. npm run build runs TypeScript, Vite, and a post-build check that verifies dist/manifest.json, the side panel entry, and the background service worker exist.

Static assets, including the extension icon assets, live in public/ and are copied into dist/ during the build.

The app opens in the Chrome side panel. The top toolbar includes URLs, Gitea repos, Issues, Add Issue, and a management dropdown for Agents, Prompts, and Workspaces. URLs and Workspaces each have a first-row Add button that opens a modal dialog. Add URL is enabled only for an active tab base URL that is not already in the URLs list. URLs can be deleted from the list. Workspaces includes generated workspace_Father entries plus user-added absolute local paths stored in chrome.storage.local; workspace creation uses a searchable generated folder index instead of copy/paste path entry. The Prompts view manages workspace-scoped default prompts in chrome.storage.local; new prompt workspace selection defaults to the active known URL's workspace when available, and Add Issue shows matching prompts above Content and copies the selected prompt into the editable content field. The Agents view manages persisted agent files, starting with GLOBAL AGENT from AGENTS.md; agents can use variables such as {{git}}, {{workspace}}, and {{url}} in their markdown content. The default global agent tells downstream agents to close the Gitea issue after pushing the implementation and to comment when delivery is blocked, partial, or risky. Add Issue is enabled when the active tab base URL is already linked to a Gitea repo; it shows the active URL being attached, creates an issue with the selected agent and selected labels, writes requirements under # Requirements and metadata under # References, and uploads the rendered agent file plus accumulated screenshots and files as issue assets. Captured screenshots can be expanded, removed, or cropped with a wider no-horizontal-scroll crop panel. Issues lists recent issues by creation time, defaults to open issues for the current repo, can expand to all loaded repos, has Open/Closed status checkboxes plus an empty-by-default label filter, and lets a selected issue open directly in Gitea, log a placeholder Send to Codex payload, edit subject/content/labels against that issue's repo with content-version readback verification, view attachments and comments, upload more screenshots/files directly to the issue, and add a comment with screenshots and file attachments. Clicking the selected issue row again or the detail close control collapses the detail panel. Rows can be deleted, and existing issue attachments can be deleted. Gitea API errors include the failed operation and network-level failures identify the configured API base plus common checks.

Builds generate public/local-context.json from /Users/Tabitha/.openclaw/workspace_Father plus searchable local folder candidates. That snapshot links known workspaces to local Gitea repos and is copied into dist/ so the built extension is self-contained. At runtime, the side panel first tries the live local context endpoint at VITE_LOCAL_CONTEXT_URL or http://127.0.0.1:23873/local-context.json, then falls back to the bundled snapshot. Workspace-sensitive views poll live local context every 10 seconds while the side panel is open.

Extension Management

See docs/extension-management.md before loading, reloading, testing, or automating the Chrome extension.

Use the Codex Chrome extension with the Chrome profile named Silma. Do not use Profile 1.

Codex

Codex setup and action commands are declared in .codex/environments/environment.toml:

  • Setup: npm ci
  • Dev: npm run dev:codex
  • Build: npm run build:codex
  • Preview: npm run preview

Gitea Workflows

  • .gitea/workflows/build.yml builds the extension on pushes to main and pull requests.
  • .gitea/workflows/issue-opened-placeholder.yml runs when a new issue is opened and prints 200 okay.