@mapick/cost-firewall 0.1.1 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/dist/cli/index.d.ts.map +1 -1
  2. package/dist/cli/index.js +25 -11
  3. package/dist/cli/index.js.map +1 -1
  4. package/dist/config.d.ts.map +1 -1
  5. package/dist/config.js +2 -0
  6. package/dist/config.js.map +1 -1
  7. package/dist/dashboard/html.d.ts.map +1 -1
  8. package/dist/dashboard/html.js +82 -38
  9. package/dist/dashboard/html.js.map +1 -1
  10. package/dist/hooks/before-agent-reply.d.ts +9 -0
  11. package/dist/hooks/before-agent-reply.d.ts.map +1 -1
  12. package/dist/hooks/before-agent-reply.js +42 -6
  13. package/dist/hooks/before-agent-reply.js.map +1 -1
  14. package/dist/hooks/before-model-resolve.d.ts +20 -0
  15. package/dist/hooks/before-model-resolve.d.ts.map +1 -0
  16. package/dist/hooks/before-model-resolve.js +30 -0
  17. package/dist/hooks/before-model-resolve.js.map +1 -0
  18. package/dist/hooks/index.d.ts.map +1 -1
  19. package/dist/hooks/index.js +6 -2
  20. package/dist/hooks/index.js.map +1 -1
  21. package/dist/hooks/model-call.d.ts.map +1 -1
  22. package/dist/hooks/model-call.js +14 -1
  23. package/dist/hooks/model-call.js.map +1 -1
  24. package/dist/pricing.d.ts +2 -4
  25. package/dist/pricing.d.ts.map +1 -1
  26. package/dist/pricing.js +2 -29
  27. package/dist/pricing.js.map +1 -1
  28. package/dist/provider/index.d.ts.map +1 -1
  29. package/dist/provider/index.js +5 -8
  30. package/dist/provider/index.js.map +1 -1
  31. package/dist/provider/stream.d.ts +2 -7
  32. package/dist/provider/stream.d.ts.map +1 -1
  33. package/dist/provider/stream.js +1 -119
  34. package/dist/provider/stream.js.map +1 -1
  35. package/dist/provider/synthetic.d.ts.map +1 -1
  36. package/dist/provider/synthetic.js +10 -1
  37. package/dist/provider/synthetic.js.map +1 -1
  38. package/dist/provider/upstream/anthropic.d.ts +1 -1
  39. package/dist/provider/upstream/anthropic.d.ts.map +1 -1
  40. package/dist/provider/upstream/anthropic.js +12 -4
  41. package/dist/provider/upstream/anthropic.js.map +1 -1
  42. package/dist/provider/upstream/openai.d.ts +1 -1
  43. package/dist/provider/upstream/openai.d.ts.map +1 -1
  44. package/dist/provider/upstream/openai.js +2 -3
  45. package/dist/provider/upstream/openai.js.map +1 -1
  46. package/dist/source.js +3 -3
  47. package/dist/source.js.map +1 -1
  48. package/dist/state.js +1 -1
  49. package/dist/types.d.ts +1 -0
  50. package/dist/types.d.ts.map +1 -1
  51. package/dist/types.js.map +1 -1
  52. package/openclaw.plugin.json +49 -13
  53. package/package.json +1 -1
@@ -2,14 +2,20 @@
2
2
  "id": "mapick-firewall",
3
3
  "name": "Mapick Cost Firewall",
4
4
  "description": "AI call circuit breaker — block runaway requests, see who's burning money, one-click emergency stop.",
5
- "version": "0.1.0",
6
- "providers": ["mapick"],
5
+ "version": "0.2.0",
6
+ "providers": [
7
+ "mapick"
8
+ ],
7
9
  "contracts": {
8
- "tools": ["firewall"]
10
+ "tools": [
11
+ "firewall"
12
+ ]
9
13
  },
10
14
  "toolMetadata": {},
11
15
  "modelSupport": {
12
- "modelPrefixes": ["mapick/"]
16
+ "modelPrefixes": [
17
+ "mapick/"
18
+ ]
13
19
  },
14
20
  "activation": {
15
21
  "onStartup": true
@@ -22,21 +28,51 @@
22
28
  "type": "object",
23
29
  "additionalProperties": false,
24
30
  "properties": {
25
- "consecutiveFailures": { "type": "number", "default": 3 },
26
- "cooldownSec": { "type": "number", "default": 30 },
27
- "tokenVelocityWindowSec": { "type": "number", "default": 60 },
28
- "tokenVelocityThreshold": { "type": "number", "default": 100000 },
29
- "callFrequencyWindowSec": { "type": "number", "default": 60 },
30
- "callFrequencyThreshold": { "type": "number", "default": 30 }
31
+ "consecutiveFailures": {
32
+ "type": "number",
33
+ "default": 3
34
+ },
35
+ "cooldownSec": {
36
+ "type": "number",
37
+ "default": 30
38
+ },
39
+ "tokenVelocityWindowSec": {
40
+ "type": "number",
41
+ "default": 60
42
+ },
43
+ "tokenVelocityThreshold": {
44
+ "type": "number",
45
+ "default": 100000
46
+ },
47
+ "callFrequencyWindowSec": {
48
+ "type": "number",
49
+ "default": 60
50
+ },
51
+ "callFrequencyThreshold": {
52
+ "type": "number",
53
+ "default": 30
54
+ }
31
55
  }
32
56
  },
33
- "dailyTokenLimit": { "type": ["number", "null"], "default": null },
57
+ "dailyTokenLimit": {
58
+ "type": [
59
+ "number",
60
+ "null"
61
+ ],
62
+ "default": null
63
+ },
34
64
  "privacy": {
35
65
  "type": "object",
36
66
  "additionalProperties": false,
37
67
  "properties": {
38
- "storePromptText": { "type": "boolean", "default": false },
39
- "enableRawConversationHooks": { "type": "boolean", "default": false }
68
+ "storePromptText": {
69
+ "type": "boolean",
70
+ "default": false
71
+ },
72
+ "enableRawConversationHooks": {
73
+ "type": "boolean",
74
+ "default": false
75
+ }
40
76
  }
41
77
  }
42
78
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mapick/cost-firewall",
3
- "version": "0.1.1",
3
+ "version": "0.2.0",
4
4
  "license": "MIT",
5
5
  "description": "Mapick Cost Firewall — OpenClaw Plugs",
6
6
  "type": "module",