Commit graph

41 commits

Author SHA1 Message Date
JAE
db79dec9e1 fix: model icons use inline opacity, DDG search upgrade, session save/load/sidebar persistence, header z-index
Some checks are pending
CI / build-check-test (push) Waiting to run
- ModelSelector: inline style opacity:0.3 instead of Tailwind class (fixes icons always lit)
- web-search: scrape lite.duckduckgo.com HTML with API fallback (fixes empty results)
- main.ts: auto-save session on agent_end event
- main.ts: header z-index:50 + overflow:visible (fixes View dropdown clipping)
- main.ts: refreshSidebar uses getAllMetadata() from IndexedDB
- main.ts: saveSession uses correct SessionsStore.save(data, metadata) API
2026-03-27 19:11:35 +00:00
JAE
aca28ad0ec fix: critical storage init - AppStorage constructed with wrong args
Some checks are pending
CI / build-check-test (push) Waiting to run
ROOT CAUSE: setAppStorage(new AppStorage(backend)) passed 1 arg
to a 5-arg constructor (settings, providerKeys, sessions,
customProviders, backend). This left providerKeys=undefined,
crashing sendMessage() at AgentInterface.ts:223 every time.

Fix:
- Create all Store instances first
- Create IndexedDBStorageBackend with proper config (dbName, stores)
- Wire backend into each store via setBackend()
- Construct AppStorage with all 5 required arguments

This was the root cause of all "messages wont send" bugs.
2026-03-27 18:42:30 +00:00
JAE
d8dc140252 fix: add SES lockdown diagnostics and Vite cache busting
Some checks are pending
CI / build-check-test (push) Waiting to run
- Add diagnostics.html page to test Lit event binding
- Add SES protection script in index.html (runs before modules)
- Force Vite dep optimization to prevent stale caches
- Fixes for users with crypto wallet extensions (MetaMask etc.)
2026-03-27 18:25:53 +00:00
JAE
fdbce41680 fix: add build:all script - packages must build in dependency order
Some checks are pending
CI / build-check-test (push) Waiting to run
Root cause of all web UI bugs: web-ui depends on jae-ai and jae-agent-core
being compiled first. Without their dist/ output, all tool imports
(bash, browser, web-search, voice-tts, memory) silently fail,
causing the entire app to crash at load time.

New scripts:
- build:all: builds packages in correct order
- build:example: builds all + example app
- dev:example: builds all + starts dev server
2026-03-27 17:48:22 +00:00
JAE
606590ec80 fix: critical bugs preventing messages from sending in web UI
Some checks are pending
CI / build-check-test (push) Waiting to run
- FIX 1: Agent constructor now wraps model/systemPrompt in initialState
  (was passed as top-level keys which Agent class ignores, causing it to
  default to Google Gemini with empty prompt and no tools)
- FIX 2: chatPanel.setAgent now includes onApiKeyRequired handler using
  ApiKeyPromptDialog.prompt() (was missing, causing silent abort when no
  API key found for provider)
- FIX 3: Fixed toolsFactory signature to match ChatPanel expected params
  (agent, iface, artifacts, runtimeFactory) instead of () => allTools
- FIX 4: Removed broken allTools.map(t => t.tool) - createXxxTool()
  returns AgentTool directly, .tool property does not exist
- FIX 5: Removed invalid convertToLlm from both Agent constructor and
  setAgent config (not a valid AgentOptions or setAgent config key)
- FIX 6: Added pointer-events:none to empty state overlay wrapper with
  pointer-events:auto on interactive child to prevent input blocking
2026-03-27 17:08:52 +00:00
JAE
3bb3caa650 fix: replace broken agent.on() with subscribe() API, add favicon, fix page title
Some checks are pending
CI / build-check-test (push) Waiting to run
- agent.on() does not exist - replaced all 3 calls with single agent.subscribe() handler
- Maps AgentEvent types: agent_start/end, turn_start/end, tool_execution_start, message_start/end
- Cost tracking now reads usage from message_end event message.usage field
- Added favicon.ico and apple-touch-icon.png from mascot
- Fixed page title from Pi Web UI to Agent JAE
2026-03-27 07:31:07 +00:00
JAE
33f439296f feat: glassmorphism UI, persona fix, enhanced animations, waveform typing, context tooltips, skill cards, smooth transitions
Some checks are pending
CI / build-check-test (push) Waiting to run
2026-03-27 06:58:31 +00:00
JAE
84671d57bf fix: dark mode shortcuts, Venice priority, browser-in-chat hiding, auto-memory, view toggles CSS, sidebar scroll
Some checks are pending
CI / build-check-test (push) Waiting to run
2026-03-27 06:34:24 +00:00
JAE
ef135b6d94 feat: Phase 1 mega-update - glassmorphism UI, 7 new components
Some checks are pending
CI / build-check-test (push) Waiting to run
New components:
- crypto-ticker: VVV/DIEM live prices via DexScreener (30s refresh)
- persona-selector: 7 AI personas with unique system prompts
- slash-commands: / autocomplete overlay for tools/skills
- marketplace: toggleable skills panel with localStorage
- mood-indicator: emotional states (neutral/focused/excited/warning/frustrated/angry)
- typing-indicator: waveform animation matching response complexity
- context-peek: hover tooltip summaries for messages

UI overhaul:
- Full glassmorphism design system (glass, glass-sm, glass-strong)
- 10+ CSS animations (fade, scale, slide, wave, float, shake, shimmer)
- Broken glass crack overlay for angry mood (5min fade)
- Dark mode fixes for keyboard shortcuts
- View toggles (tools/thinking/system/timestamps) now apply CSS classes
- Session sidebar: 6-chat max with hover scrollbar
- Auto-open browser/terminal panels on tool use
- Venice as default provider
- Smooth hover/click transitions on all buttons
- Loading screen with floating mascot + shimmer
2026-03-27 06:21:38 +00:00
JAE
6c0037f8a1 fix: critical tool registration bug - ChatPanel.setAgent() was overwriting all tools
Some checks are pending
CI / build-check-test (push) Waiting to run
ROOT CAUSE: agent.setTools() registered 8 tools (bash, browser, web-search,
image-gen, tts, memory, repl), then chatPanel.setAgent(agent) with no config
called this.agent.setTools([artifactsTool]) internally, OVERWRITING all tools.

FIX: Pass tools via toolsFactory config parameter so ChatPanel merges them
with its own artifacts tool instead of replacing them.

This fixes all 'Tool X not found' errors in the web UI.
2026-03-27 04:59:26 +00:00
JAE
11af96265a fix: register tools via setTools(), add Tools/Code capability badges
Some checks are pending
CI / build-check-test (push) Waiting to run
- Fix 'Tool browser not found': createTools callback was silently ignored
  by Agent constructor. Now uses agent.setTools() after instantiation.
- Add Wrench (Tools) and Code icons + filter buttons to ModelSelector
  alongside existing Brain (Reasoning) and Image (Vision).
- Add refreshSidebar() call in createAgent for session list updates.
2026-03-27 04:44:28 +00:00
JAE
fedc60fd0f feat: unified tool-server + Agent Zero-inspired system prompt
Some checks are pending
CI / build-check-test (push) Waiting to run
- Merge 3 servers into single tool-server.mjs on port 7700
  - HTTP API: POST /api/bash, /api/browser/*
  - WebSocket: /ws/terminal (xterm.js panel)
  - WebSocket: /ws/browser (live browser panel)
- SHARED Playwright instance between LLM browser tool and user panel
  - When AI navigates a page, user sees it live in browser panel
  - When user clicks in panel, AI tools see the same page state
- Remove standalone terminal-server.mjs (was :7701)
- Remove standalone browser-server.mjs (was :7702)
- Update browser-panel.ts: ws://localhost:7700/ws/browser
- Update terminal-panel.ts: ws://localhost:7700/ws/terminal
- Agent Zero-inspired system prompt with:
  - Structured problem-solving methodology (analyse/plan/execute/verify/report)
  - Clear tool usage rules (no tools for casual chat)
  - Detailed tool descriptions with usage guidance
  - Resourceful retry behaviour on failures
- npm run dev starts both vite + unified server via concurrently
2026-03-27 04:13:17 +00:00
JAE
4c09f71351 fix: stronger no-tool system prompt + dev script starts tool-server
Some checks are pending
CI / build-check-test (push) Waiting to run
2026-03-27 04:01:21 +00:00
JAE
0caab5381c fix: install all deps from monorepo root so tsgo + bins are hoisted
Some checks are pending
CI / build-check-test (push) Waiting to run
2026-03-27 03:17:41 +00:00
JAE
f0f73e4d72 fix: strip husky prepare script + --ignore-scripts in Docker build
Some checks are pending
CI / build-check-test (push) Waiting to run
2026-03-27 03:13:53 +00:00
JAE
f7543e78f5 fix: disable husky in Docker build (HUSKY=0)
Some checks are pending
CI / build-check-test (push) Waiting to run
2026-03-27 03:11:59 +00:00
JAE
62c057e18c fix: Docker build uses monorepo root context for workspace links
Some checks are pending
CI / build-check-test (push) Waiting to run
2026-03-27 03:08:54 +00:00
JAE
bdd881e80c fix: use npm install instead of npm ci in Dockerfile (no lockfile)
Some checks are pending
CI / build-check-test (push) Waiting to run
2026-03-27 03:01:56 +00:00
JAE
00e9816e57 feat: add bash/browser agent tools + Docker support
Some checks are pending
CI / build-check-test (push) Waiting to run
- bash-tool.ts: execute shell commands via tool-server HTTP API
- browser-tool.ts: Playwright browser automation (navigate, click, type, screenshot)
- tool-server.mjs: Node.js HTTP server for bash exec + Playwright control (port 7700)
- Dockerfile + docker-compose.yml for containerised deployment
- Register tools in agent toolchain (main.ts, index.ts)
- Add dev:all script to run Vite + tool-server concurrently
2026-03-26 23:36:29 +00:00
JAE
92eea4ea61 fix: prevent LLM from using tools on casual conversation
Some checks are pending
CI / build-check-test (push) Waiting to run
The system prompt told the model to "use tools whenever helpful" which
caused Llama-3.3-70b to fire every tool on simple inputs like "hi".
New prompt explicitly instructs conversational responses for chat and
tool use only when explicitly requested.
2026-03-26 23:12:17 +00:00
JAE
92a294a7a2 fix: 9 web UI bugs - cost tracker, model badge, empty state, provider tabs, memory tools, session save, dark mode, view toggles
Some checks are pending
CI / build-check-test (push) Waiting to run
- Cost tracker: fix event type message -> message_end, handle usage.input fallback
- Model badge: update immediately on model select via onModelSelect hook
- Empty state: hide completely when hasMessages (not after LLM responds)
- Provider tabs: add renderProviderTabs() to ModelSelector content + filtering
- Memory tools: register memory_save/recall in tool index, export from web-ui, add to createTools
- Session save: save before newSession, relax shouldSaveSession to user-only, title fallback
- Dark mode: add text-foreground to memory-manager dialog + inputs
- View toggles: add tool-message and thinking-block element CSS selectors
- Empty state faded: return empty html instead of ghost mascot
2026-03-26 23:02:54 +00:00
JAE
63a773184c fix: provider filter tabs, model badge always visible, empty-state 4% fade, server deps (ws/concurrently)
Some checks are pending
CI / build-check-test (push) Waiting to run
2026-03-26 21:27:24 +00:00
JAE
1514fabd50 fix: model badge, empty-state cover, mascot centering, resizable panels, sidebar history
Some checks are pending
CI / build-check-test (push) Waiting to run
2026-03-26 20:52:23 +00:00
JAE
97cef8b4d3 feat: add embedded terminal (xterm.js) and playwright browser panel
Some checks are pending
CI / build-check-test (push) Waiting to run
- Fix empty state overlay covering chat input (bottom:130px offset)
- Fix suggestion chips click-through with corrected z-layering
- Fix handleSuggestion to use chatPanel.agentInterface.setInput()
- Add JaeTerminalPanel: xterm.js + WebSocket bash shell (port 7701)
- Add JaeBrowserPanel: Playwright chromium screenshots (port 7702)
- Add terminal/browser toggle buttons in header toolbar
- Add collapsible right panel with Terminal/Browser tabs
- Add server/terminal-server.mjs and server/browser-server.mjs
- Add npm run dev:all script (Vite + terminal + browser servers)
2026-03-26 20:10:57 +00:00
JAE
2b53445f4e fix: sidebar, always-visible chat input, Venice default model, dropdown direction
Some checks are pending
CI / build-check-test (push) Waiting to run
2026-03-26 19:20:07 +00:00
JAE
21ff41fc77 feat: add mascot images, empty state, and utility message toggle
Some checks are pending
CI / build-check-test (push) Waiting to run
- Add 5 mascot images (default, fire, point-up, point-self, camo) to public/mascot/
- New empty state component with floating mascot, tagline, and suggestion chips
- New utility toggle component (show/hide tool calls, thinking, system msgs, timestamps)
- Mascot logo in header with wobble animation on hover
- Floating animation and orange glow for mascot in empty state
- Suggestion chips dispatch events to fill chat textarea
- CSS visibility classes for all toggle states
2026-03-26 01:55:59 +00:00
JAE
4cdf01ba9e feat: add comprehensive web UI features - command palette, memory manager, cost tracker, diff viewer, mermaid diagrams, keyboard shortcuts, session export
Some checks are pending
CI / build-check-test (push) Waiting to run
2026-03-25 23:51:40 +00:00
JAE
903540fa95 feat: add all major features - Venice web UI, CLI tools, web-ui enhancements
Some checks are pending
CI / build-check-test (push) Waiting to run
CLI (coding-agent):
- web-search.ts: DuckDuckGo web search tool
- web-fetch.ts: Fetch and read web pages
- image-gen.ts: Venice AI image generation
- memory.ts: In-session memory store/recall
- browser.ts: Playwright headless browser tool
- tools/index.ts: Register all new tools
- model-resolver.ts: Venice as default provider

Web UI:
- VeniceModelBrowser.ts: Model picker with category tags
- ProvidersModelsTab.ts: Venice API key + model browser
- ProviderKeyInput.ts: Venice key validation
- ModelSelector.ts: Updated model selector
- SettingsDialog.ts: Settings wired up
- tools/index.ts: Export new tools
- utils/model-discovery.ts: Venice model fetching
- utils/format.ts: Formatting helpers
- example/main.ts: Wire up new tools in example app

jae-ai:
- env-api-keys.ts: VENICE_API_KEY mapping
- types.ts: venice in KnownProvider
- oauth/venice.ts: Venice OAuth/API key provider
- oauth/index.ts: Register Venice provider
2026-03-25 18:32:28 +00:00
JAE
29574c7c86 feat: add web-search, image-gen, voice-tts tools to web-ui
Some checks are pending
CI / build-check-test (push) Waiting to run
- web-search: DuckDuckGo search with inline result cards
- image-gen: Venice AI image generation with inline preview + download
- voice-tts: Venice AI TTS with inline audio player
- All use correct ToolRenderer class pattern matching jae-web-ui API
2026-03-25 18:32:10 +00:00
JAE
ff883ac79f docs: add Linux npm permissions guidance and prerequisites section
Some checks are pending
CI / build-check-test (push) Waiting to run
2026-03-25 16:46:49 +00:00
JAE
756101ce7d fix: separate generate-models from build script in jae-ai
Some checks are pending
CI / build-check-test (push) Waiting to run
- Remove generate-models from build chain to prevent Venice entries being wiped
- Add separate update-models script for manual model list refreshes
- build now runs: tsgo -p tsconfig.build.json only
- update-models must be run explicitly when refreshing provider model lists
2026-03-25 16:22:04 +00:00
JAE
76c500497d feat: add Venice AI provider with 158 models
Some checks are pending
CI / build-check-test (push) Waiting to run
- Add venice.ts OAuth provider implementation
- Register Venice in BUILT_IN_OAUTH_PROVIDERS
- Add KnownProvider type entry for venice
- Map VENICE_API_KEY in env-api-keys.ts
- Set llama-3.3-70b as default Venice model in model-resolver.ts
- Add full Venice model catalog (158 models) to models.generated.ts
- Bump jae-tui and jae-agent-core to 0.62.1
2026-03-25 16:01:41 +00:00
jae
71eeb5cb8f Update JAE dragon mascot
Some checks failed
CI / build-check-test (push) Has been cancelled
2026-03-24 03:23:29 +01:00
jae
a2c1c92872 Add 6 new extensions: dependency-auditor, docker-manager, env-manager, theme-system, agent-to-agent, gamification 2026-03-24 02:53:36 +01:00
jae
36273543bd Replace README with Agent JAE branding + mascot - Add transparent JAE dragon mascot - Document all features, tools, extensions, skills, providers 2026-03-24 02:12:56 +01:00
jae
37dc48b488 fix: venice skill bugs - pydantic v1 compat, --help handling, test params 2026-03-23 21:18:22 +01:00
jae
6f00905bda fix: venice-list-video-models --help handling, venice-video-quote test params
- Added early --help handler in list_video_models.py before API call
- Fixed venice-video-quote self-test: audio=False for wan-2.5 model
- VENICE_API_KEY added to ~/.bashrc for runtime
2026-03-23 21:12:39 +01:00
jae
a1b6e22c01 feat: add 16 default extensions for Agent JAE
New extensions shipping with Agent JAE:
- jae-rules: Per-project .jae/rules.md injection
- cost-tracker: Token/cost tracking with budget limits
- project-dna: Auto-analyze project fingerprint
- teach-mode: Pedagogical explanation mode
- bookmarks: File bookmark management
- replay: Session recording and asciicast export
- checkpoints: Git-based undo/time-travel
- pr-review: Autonomous PR diff review
- auto-docs: Auto-generate README and docs
- screenshot-context: Vision analysis for screenshots
- deploy: One-command deploy (Docker/Vercel/rsync/static)
- pair-programming: Real-time file watching with feedback
- dashboard: Terminal HUD with live stats
- swarm: Multi-agent parallel task execution
- skill-marketplace: Search/install/publish skills
- widget-api-demo: TUI widget API demonstration
2026-03-23 20:14:41 +01:00
jae
c42cd9a062 feat: add 11 Venice AI skills as bundled defaults
Skills included:
- venice-chat: Chat with Venice LLM models, vision, reasoning
- venice-chat-benchmark: Benchmark chat models with infographics
- venice-image-gen: Generate images via Venice API
- venice-list-image-models: List available image models
- venice-list-text-models: List available text models
- venice-list-video-models: List available video models
- venice-tts: Text-to-speech via Venice API
- venice-video-generate: Generate videos from text/images
- venice-video-queue: Queue video generation jobs
- venice-video-quote: Get video generation cost quotes
- venice-video-retrieve: Retrieve completed videos

All rebranded from Agent Zero paths to Agent JAE (~/.jae/agent/skills/).
Requires VENICE_API_KEY environment variable.
2026-03-23 18:47:33 +01:00
jae
32c64f27e7 feat: custom Agent JAE system prompt with dynamic builder 2026-03-23 09:35:04 +01:00
jae
779e6aed4e Initial commit: Agent JAE CLI - AI coding assistant 2026-03-23 09:17:58 +01:00