You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Major release with structured XML prompts system and critical security fixes:
## XML-Enhanced Prompts System
- Structured XML prompt templates for consistent LLM interactions
- Built-in templates: security-audit, code-review, research, bug-analysis
- XmlPromptTemplate and PlainTextPromptTemplate classes
- XmlResponseParser with safe defusedxml parsing (prevents XXE)
- PromptContext dataclass with factory methods
- Per-workflow XML configuration via .empathy/workflows.yaml
## Security Fixes (HIGH Priority)
- Fixed command injection in VSCode extension EmpathyDashboardPanel.ts
- Fixed command injection in extension.ts runEmpathyCommand functions
- Replaced vulnerable cp.exec() with safe cp.execFile() using arrays
- Created health_scan.py helper script to eliminate inline code
- Removed insecure demo_key fallback in wizard_api.py
- Updated .gitignore for nested .env files
- Added defusedxml for secure XML parsing
## VSCode Dashboard Enhancements
- 10 integrated workflows with input history persistence
- File/folder picker integration for workflow inputs
- Cost fetching from telemetry CLI with fallback
- Error banner for improved debugging
## Documentation
- Added XML-Enhanced Prompts section to README
- Updated CHANGELOG with v3.0.0 and v3.0.1 entries
- Added security notice to test fixtures
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <[email protected]>
# Understanding By Tier (7 days) in the Empathy Dashboard
2
+
3
+
The Empathy VS Code dashboard includes a **Cost Details** panel that shows how model routing is saving you money over the last 7 days.
4
+
5
+
When you click **View Costs** in the Power tab, you’ll see:
6
+
7
+
-**Saved** – Total dollars saved over the last 7 days compared to always using the premium model.
8
+
-**Reduction** – Percentage reduction in cost compared to the premium-only baseline.
9
+
-**Actual** – Actual dollars spent on API calls in the last 7 days.
10
+
11
+
Below the summary, the **By tier (7 days)** section breaks those savings down by model tier:
12
+
13
+
-**Cheap** – Requests routed to the cheapest tier (e.g., Haiku-level models). Best for simple tasks like short summaries.
14
+
-**Capable** – Requests routed to the middle tier (e.g., Sonnet-level models). Used for most code and reasoning tasks.
15
+
-**Premium** – Requests routed to the most powerful tier (e.g., Opus-level models). Reserved for the hardest or most critical tasks.
16
+
17
+
For each tier, you’ll see:
18
+
19
+
-**Requests** – How many API calls used this tier in the last 7 days.
20
+
-**Cost** – Actual dollars spent on that tier.
21
+
-**+Saved** – How many dollars you saved by using this tier instead of always using the premium model for those same requests.
22
+
23
+
Use this section to answer questions like:
24
+
25
+
- Are most of my requests using **cheap** or **capable** models instead of premium?
26
+
- Which tier is responsible for the **largest share of savings**?
27
+
- Do I have many **premium** calls that could safely be moved down to capable or cheap?
28
+
29
+
If the **cheap** and **capable** tiers show healthy savings and most requests, your routing is working well. If **premium** dominates both cost and request count, consider revisiting your task-type to tier mapping in `ModelRouter` or your workflow configuration.
0 commit comments