{ "schema_version": "1.0", "name": "mp-silma-ai-aide", "description": "A Vite and TypeScript Chrome extension side panel for Gitea-backed Silma AI aide workflows.", "project_type": "chrome-extension", "language": "typescript", "package_manager": "npm", "deployable_output": { "path": "dist/", "type": "chrome-extension", "description": "Build output is self-contained and can be loaded directly as an unpacked Chrome extension." }, "entrypoints": { "side_panel_html": "index.html", "side_panel_script": "src/main.ts", "background_service_worker": "src/background.ts", "state_store": "src/store.ts", "api_client": "src/api.ts", "local_context_types": "src/localContext.ts", "vite_config": "vite.config.ts", "extension_icons": "public/icons/", "local_context": "public/local-context.json", "local_context_generator": "scripts/generate-local-context.mjs", "generated_manifest": "dist/manifest.json" }, "ui": { "shell": "Chrome side panel", "menu_items": [ { "name": "Add URL", "enabled": "when active tab base URL is not already known" }, { "name": "URLs", "enabled": true }, { "name": "Gitea Repos", "enabled": true }, { "name": "Workspaces", "enabled": true }, { "name": "Add Issue", "enabled": "when active tab base URL is known and linked to a Gitea repo" } ], "repo_ordering": "Gitea repos are ordered by latest default-branch commit timestamp.", "add_url_behavior": "The user must pick either a workspace or a Gitea repo. The app infers the linked counterpart from local context and stores the URL link in chrome.storage.local.", "delete_url_behavior": "URLs can be deleted from the list. User-added URLs are removed from chrome.storage.local; generated known URLs are hidden by storing their base URL in silmaAide.deletedUrlBases.", "add_issue_behavior": "The form shows the target repo for the active known URL, captures visible-tab screenshots with thumbnails, accepts file attachments, creates a Gitea issue, uploads screenshots/files as issue assets, then applies the ready label after uploads when requested. Issue bodies include Chrome profile: Silma.", "known_urls": [ { "url": "http://100.66.226.22:23030/", "workspace": "/Users/Tabitha/.openclaw/workspace_Father/workspace_Data", "gitea_repo": "jacob-mathison/home-grown-llm-data" } ] }, "documentation": { "agent_instructions": "AGENTS.md", "llm_summary": "llm.txt", "readme": "README.md", "extension_management": "docs/extension-management.md" }, "extension_management": { "chrome_profile": "Silma", "forbidden_profiles": ["Profile 1"], "codex_chrome_extension_required": true, "load_unpacked_path": "dist/", "instructions": "Use the Codex Chrome extension with the Chrome profile named Silma. Do not use Profile 1." }, "extension_permissions": [ "activeTab", "sidePanel", "storage", "tabs" ], "extension_host_permissions": [ "http://*/*", "https://*/*", "Gitea host derived from VITE_GITEA_BASE_URL" ], "commands": { "install": "npm ci", "codex_setup": "npm run codex:setup", "dev": "npm run dev", "codex_dev": "npm run dev:codex", "build": "npm run build", "codex_build": "npm run build:codex", "preview": "npm run preview", "verify_dist": "npm run verify:dist" }, "environment": { "example_file": ".env.example", "local_file": ".env.local", "variables": [ { "name": "VITE_GITEA_BASE_URL", "required": true, "secret": false, "description": "Base URL for the Gitea instance." }, { "name": "VITE_GITEA_TOKEN", "required": true, "secret": true, "description": "Gitea API token used by the side panel client." }, { "name": "VITE_GITEA_REPO_OWNER", "required": true, "secret": false, "description": "Owner for the target Gitea repository." }, { "name": "VITE_GITEA_REPO_NAME", "required": true, "secret": false, "description": "Name of the target Gitea repository." } ] }, "generated_paths": [ "dist/", "node_modules/" ], "gitea_workflows": [ { "path": ".gitea/workflows/build.yml", "trigger": "push to main or pull request", "purpose": "Build and verify the deployable extension output." }, { "path": ".gitea/workflows/issue-opened-placeholder.yml", "trigger": "new issue opened", "purpose": "Placeholder workflow that prints 200 okay." } ], "agent_guidance": "See AGENTS.md and docs/extension-management.md for coding, build, and Chrome profile instructions. Do not edit dist/ directly; rebuild from source instead." }