agent-relay 2.0.23 → 2.0.24
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.
- package/dist/src/cli/index.js +66 -13
- package/package.json +18 -52
- package/packages/api-types/package.json +1 -1
- package/packages/bridge/package.json +8 -8
- package/packages/cli-tester/package.json +1 -1
- package/packages/config/package.json +2 -2
- package/packages/continuity/package.json +1 -1
- package/packages/daemon/package.json +12 -12
- package/packages/hooks/package.json +4 -4
- package/packages/mcp/package.json +2 -2
- package/packages/memory/package.json +2 -2
- package/packages/policy/package.json +2 -2
- package/packages/protocol/package.json +1 -1
- package/packages/resiliency/package.json +1 -1
- package/packages/sdk/package.json +2 -2
- package/packages/spawner/package.json +1 -1
- package/packages/state/package.json +1 -1
- package/packages/storage/package.json +2 -2
- package/packages/telemetry/package.json +1 -1
- package/packages/trajectory/package.json +2 -2
- package/packages/user-directory/package.json +2 -2
- package/packages/utils/package.json +1 -1
- package/packages/wrapper/package.json +6 -6
- package/deploy/init-db.sql +0 -5
- package/deploy/scripts/setup-fly-workspaces.sh +0 -69
- package/deploy/scripts/setup-railway.sh +0 -75
- package/dist/src/cloud/index.d.ts +0 -8
- package/dist/src/cloud/index.js +0 -8
- package/packages/cloud/dist/api/admin.d.ts +0 -8
- package/packages/cloud/dist/api/admin.js +0 -225
- package/packages/cloud/dist/api/auth.d.ts +0 -20
- package/packages/cloud/dist/api/auth.js +0 -138
- package/packages/cloud/dist/api/billing.d.ts +0 -7
- package/packages/cloud/dist/api/billing.js +0 -564
- package/packages/cloud/dist/api/cli-pty-runner.d.ts +0 -53
- package/packages/cloud/dist/api/cli-pty-runner.js +0 -175
- package/packages/cloud/dist/api/codex-auth-helper.d.ts +0 -21
- package/packages/cloud/dist/api/codex-auth-helper.js +0 -327
- package/packages/cloud/dist/api/consensus.d.ts +0 -13
- package/packages/cloud/dist/api/consensus.js +0 -261
- package/packages/cloud/dist/api/coordinators.d.ts +0 -8
- package/packages/cloud/dist/api/coordinators.js +0 -750
- package/packages/cloud/dist/api/daemons.d.ts +0 -12
- package/packages/cloud/dist/api/daemons.js +0 -535
- package/packages/cloud/dist/api/email-auth.d.ts +0 -11
- package/packages/cloud/dist/api/email-auth.js +0 -347
- package/packages/cloud/dist/api/generic-webhooks.d.ts +0 -8
- package/packages/cloud/dist/api/generic-webhooks.js +0 -129
- package/packages/cloud/dist/api/git.d.ts +0 -8
- package/packages/cloud/dist/api/git.js +0 -269
- package/packages/cloud/dist/api/github-app.d.ts +0 -11
- package/packages/cloud/dist/api/github-app.js +0 -223
- package/packages/cloud/dist/api/middleware/planLimits.d.ts +0 -43
- package/packages/cloud/dist/api/middleware/planLimits.js +0 -202
- package/packages/cloud/dist/api/monitoring.d.ts +0 -11
- package/packages/cloud/dist/api/monitoring.js +0 -578
- package/packages/cloud/dist/api/nango-auth.d.ts +0 -9
- package/packages/cloud/dist/api/nango-auth.js +0 -741
- package/packages/cloud/dist/api/onboarding.d.ts +0 -15
- package/packages/cloud/dist/api/onboarding.js +0 -679
- package/packages/cloud/dist/api/policy.d.ts +0 -8
- package/packages/cloud/dist/api/policy.js +0 -229
- package/packages/cloud/dist/api/provider-env.d.ts +0 -26
- package/packages/cloud/dist/api/provider-env.js +0 -141
- package/packages/cloud/dist/api/providers.d.ts +0 -7
- package/packages/cloud/dist/api/providers.js +0 -574
- package/packages/cloud/dist/api/repos.d.ts +0 -8
- package/packages/cloud/dist/api/repos.js +0 -577
- package/packages/cloud/dist/api/sessions.d.ts +0 -11
- package/packages/cloud/dist/api/sessions.js +0 -302
- package/packages/cloud/dist/api/teams.d.ts +0 -7
- package/packages/cloud/dist/api/teams.js +0 -281
- package/packages/cloud/dist/api/test-helpers.d.ts +0 -10
- package/packages/cloud/dist/api/test-helpers.js +0 -745
- package/packages/cloud/dist/api/usage.d.ts +0 -7
- package/packages/cloud/dist/api/usage.js +0 -111
- package/packages/cloud/dist/api/webhooks.d.ts +0 -8
- package/packages/cloud/dist/api/webhooks.js +0 -645
- package/packages/cloud/dist/api/workspaces.d.ts +0 -25
- package/packages/cloud/dist/api/workspaces.js +0 -1799
- package/packages/cloud/dist/billing/index.d.ts +0 -9
- package/packages/cloud/dist/billing/index.js +0 -9
- package/packages/cloud/dist/billing/plans.d.ts +0 -39
- package/packages/cloud/dist/billing/plans.js +0 -245
- package/packages/cloud/dist/billing/service.d.ts +0 -80
- package/packages/cloud/dist/billing/service.js +0 -388
- package/packages/cloud/dist/billing/types.d.ts +0 -141
- package/packages/cloud/dist/billing/types.js +0 -7
- package/packages/cloud/dist/config.d.ts +0 -5
- package/packages/cloud/dist/config.js +0 -5
- package/packages/cloud/dist/db/bulk-ingest.d.ts +0 -89
- package/packages/cloud/dist/db/bulk-ingest.js +0 -268
- package/packages/cloud/dist/db/drizzle.d.ts +0 -290
- package/packages/cloud/dist/db/drizzle.js +0 -1422
- package/packages/cloud/dist/db/index.d.ts +0 -56
- package/packages/cloud/dist/db/index.js +0 -70
- package/packages/cloud/dist/db/schema.d.ts +0 -5117
- package/packages/cloud/dist/db/schema.js +0 -656
- package/packages/cloud/dist/index.d.ts +0 -11
- package/packages/cloud/dist/index.js +0 -38
- package/packages/cloud/dist/provisioner/index.d.ts +0 -207
- package/packages/cloud/dist/provisioner/index.js +0 -2118
- package/packages/cloud/dist/server.d.ts +0 -17
- package/packages/cloud/dist/server.js +0 -2055
- package/packages/cloud/dist/services/auto-scaler.d.ts +0 -152
- package/packages/cloud/dist/services/auto-scaler.js +0 -439
- package/packages/cloud/dist/services/capacity-manager.d.ts +0 -148
- package/packages/cloud/dist/services/capacity-manager.js +0 -449
- package/packages/cloud/dist/services/ci-agent-spawner.d.ts +0 -49
- package/packages/cloud/dist/services/ci-agent-spawner.js +0 -373
- package/packages/cloud/dist/services/cloud-message-bus.d.ts +0 -28
- package/packages/cloud/dist/services/cloud-message-bus.js +0 -19
- package/packages/cloud/dist/services/compute-enforcement.d.ts +0 -57
- package/packages/cloud/dist/services/compute-enforcement.js +0 -175
- package/packages/cloud/dist/services/coordinator.d.ts +0 -62
- package/packages/cloud/dist/services/coordinator.js +0 -389
- package/packages/cloud/dist/services/index.d.ts +0 -17
- package/packages/cloud/dist/services/index.js +0 -25
- package/packages/cloud/dist/services/intro-expiration.d.ts +0 -60
- package/packages/cloud/dist/services/intro-expiration.js +0 -252
- package/packages/cloud/dist/services/mention-handler.d.ts +0 -65
- package/packages/cloud/dist/services/mention-handler.js +0 -405
- package/packages/cloud/dist/services/nango.d.ts +0 -219
- package/packages/cloud/dist/services/nango.js +0 -424
- package/packages/cloud/dist/services/persistence.d.ts +0 -131
- package/packages/cloud/dist/services/persistence.js +0 -200
- package/packages/cloud/dist/services/planLimits.d.ts +0 -147
- package/packages/cloud/dist/services/planLimits.js +0 -335
- package/packages/cloud/dist/services/presence-registry.d.ts +0 -56
- package/packages/cloud/dist/services/presence-registry.js +0 -91
- package/packages/cloud/dist/services/scaling-orchestrator.d.ts +0 -159
- package/packages/cloud/dist/services/scaling-orchestrator.js +0 -502
- package/packages/cloud/dist/services/scaling-policy.d.ts +0 -121
- package/packages/cloud/dist/services/scaling-policy.js +0 -415
- package/packages/cloud/dist/services/ssh-security.d.ts +0 -31
- package/packages/cloud/dist/services/ssh-security.js +0 -63
- package/packages/cloud/dist/services/workspace-keepalive.d.ts +0 -76
- package/packages/cloud/dist/services/workspace-keepalive.js +0 -234
- package/packages/cloud/dist/shims/consensus.d.ts +0 -23
- package/packages/cloud/dist/shims/consensus.js +0 -5
- package/packages/cloud/dist/webhooks/index.d.ts +0 -24
- package/packages/cloud/dist/webhooks/index.js +0 -29
- package/packages/cloud/dist/webhooks/parsers/github.d.ts +0 -8
- package/packages/cloud/dist/webhooks/parsers/github.js +0 -234
- package/packages/cloud/dist/webhooks/parsers/index.d.ts +0 -23
- package/packages/cloud/dist/webhooks/parsers/index.js +0 -30
- package/packages/cloud/dist/webhooks/parsers/linear.d.ts +0 -9
- package/packages/cloud/dist/webhooks/parsers/linear.js +0 -258
- package/packages/cloud/dist/webhooks/parsers/slack.d.ts +0 -9
- package/packages/cloud/dist/webhooks/parsers/slack.js +0 -214
- package/packages/cloud/dist/webhooks/responders/github.d.ts +0 -8
- package/packages/cloud/dist/webhooks/responders/github.js +0 -73
- package/packages/cloud/dist/webhooks/responders/index.d.ts +0 -23
- package/packages/cloud/dist/webhooks/responders/index.js +0 -30
- package/packages/cloud/dist/webhooks/responders/linear.d.ts +0 -9
- package/packages/cloud/dist/webhooks/responders/linear.js +0 -149
- package/packages/cloud/dist/webhooks/responders/slack.d.ts +0 -20
- package/packages/cloud/dist/webhooks/responders/slack.js +0 -178
- package/packages/cloud/dist/webhooks/router.d.ts +0 -25
- package/packages/cloud/dist/webhooks/router.js +0 -504
- package/packages/cloud/dist/webhooks/rules-engine.d.ts +0 -24
- package/packages/cloud/dist/webhooks/rules-engine.js +0 -287
- package/packages/cloud/dist/webhooks/types.d.ts +0 -186
- package/packages/cloud/dist/webhooks/types.js +0 -8
- package/packages/cloud/package.json +0 -60
- package/scripts/run-migrations.js +0 -43
- package/scripts/setup-stripe-products.ts +0 -312
- package/scripts/verify-schema.js +0 -134
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Usage API Routes
|
|
3
|
-
*
|
|
4
|
-
* Track and report user resource usage against plan limits.
|
|
5
|
-
*/
|
|
6
|
-
import { Router } from 'express';
|
|
7
|
-
import { requireAuth } from './auth.js';
|
|
8
|
-
import { getRemainingQuota, getUserUsage, getPlanLimits } from '../services/planLimits.js';
|
|
9
|
-
import { getIntroStatus } from '../services/intro-expiration.js';
|
|
10
|
-
import { db } from '../db/index.js';
|
|
11
|
-
export const usageRouter = Router();
|
|
12
|
-
// All routes require authentication
|
|
13
|
-
usageRouter.use(requireAuth);
|
|
14
|
-
/**
|
|
15
|
-
* GET /api/usage
|
|
16
|
-
* Get current usage vs limits for the authenticated user
|
|
17
|
-
*/
|
|
18
|
-
usageRouter.get('/', async (req, res) => {
|
|
19
|
-
const userId = req.session.userId;
|
|
20
|
-
try {
|
|
21
|
-
const user = await db.users.findById(userId);
|
|
22
|
-
if (!user) {
|
|
23
|
-
return res.status(404).json({ error: 'User not found' });
|
|
24
|
-
}
|
|
25
|
-
const plan = user.plan || 'free';
|
|
26
|
-
const quota = await getRemainingQuota(userId);
|
|
27
|
-
// Get intro period status for free tier users
|
|
28
|
-
const introStatus = getIntroStatus(user.createdAt, plan);
|
|
29
|
-
const calcPercent = (current, limit) => limit === Infinity ? 0 : Math.round((current / limit) * 100);
|
|
30
|
-
res.json({
|
|
31
|
-
plan,
|
|
32
|
-
limits: {
|
|
33
|
-
workspaces: quota.limits.maxWorkspaces,
|
|
34
|
-
repos: quota.limits.maxRepos,
|
|
35
|
-
concurrentAgents: quota.limits.maxConcurrentAgents,
|
|
36
|
-
computeHoursPerMonth: quota.limits.maxComputeHoursPerMonth,
|
|
37
|
-
coordinatorsEnabled: quota.limits.coordinatorsEnabled,
|
|
38
|
-
},
|
|
39
|
-
usage: {
|
|
40
|
-
workspaces: quota.usage.workspaceCount,
|
|
41
|
-
repos: quota.usage.repoCount,
|
|
42
|
-
concurrentAgents: quota.usage.concurrentAgents,
|
|
43
|
-
computeHoursThisMonth: quota.usage.computeHoursThisMonth,
|
|
44
|
-
},
|
|
45
|
-
remaining: {
|
|
46
|
-
workspaces: quota.remaining.workspaces,
|
|
47
|
-
repos: quota.remaining.repos,
|
|
48
|
-
concurrentAgents: quota.remaining.concurrentAgents,
|
|
49
|
-
computeHours: quota.remaining.computeHours,
|
|
50
|
-
},
|
|
51
|
-
percentUsed: {
|
|
52
|
-
workspaces: calcPercent(quota.usage.workspaceCount, quota.limits.maxWorkspaces),
|
|
53
|
-
repos: calcPercent(quota.usage.repoCount, quota.limits.maxRepos),
|
|
54
|
-
concurrentAgents: calcPercent(quota.usage.concurrentAgents, quota.limits.maxConcurrentAgents),
|
|
55
|
-
computeHours: calcPercent(quota.usage.computeHoursThisMonth, quota.limits.maxComputeHoursPerMonth),
|
|
56
|
-
},
|
|
57
|
-
// Intro period bonus for free tier users (2 CPU / 4GB for first 14 days)
|
|
58
|
-
introBonus: {
|
|
59
|
-
isActive: introStatus.isIntroPeriod,
|
|
60
|
-
daysRemaining: introStatus.daysRemaining,
|
|
61
|
-
totalDays: introStatus.introPeriodDays,
|
|
62
|
-
expiresAt: introStatus.expiresAt?.toISOString() || null,
|
|
63
|
-
resources: introStatus.isIntroPeriod
|
|
64
|
-
? { cpus: 2, memoryGb: 4, description: 'Pro-level resources' }
|
|
65
|
-
: { cpus: 1, memoryGb: 2, description: 'Standard free tier' },
|
|
66
|
-
},
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
catch (error) {
|
|
70
|
-
console.error('Error getting usage:', error);
|
|
71
|
-
res.status(500).json({ error: 'Failed to get usage' });
|
|
72
|
-
}
|
|
73
|
-
});
|
|
74
|
-
/**
|
|
75
|
-
* GET /api/usage/summary
|
|
76
|
-
* Get a quick summary of plan and usage status
|
|
77
|
-
*/
|
|
78
|
-
usageRouter.get('/summary', async (req, res) => {
|
|
79
|
-
const userId = req.session.userId;
|
|
80
|
-
try {
|
|
81
|
-
const user = await db.users.findById(userId);
|
|
82
|
-
if (!user) {
|
|
83
|
-
return res.status(404).json({ error: 'User not found' });
|
|
84
|
-
}
|
|
85
|
-
const plan = user.plan || 'free';
|
|
86
|
-
const limits = getPlanLimits(plan);
|
|
87
|
-
const usage = await getUserUsage(userId);
|
|
88
|
-
// Calculate warnings (when at 80%+ of limit)
|
|
89
|
-
const warnings = [];
|
|
90
|
-
const checkLimit = (resource, message, current, limit) => {
|
|
91
|
-
if (limit !== Infinity && current >= limit * 0.8) {
|
|
92
|
-
warnings.push({ resource, message, current, limit });
|
|
93
|
-
}
|
|
94
|
-
};
|
|
95
|
-
checkLimit('workspaces', 'Approaching workspace limit', usage.workspaceCount, limits.maxWorkspaces);
|
|
96
|
-
checkLimit('repos', 'Approaching repository limit', usage.repoCount, limits.maxRepos);
|
|
97
|
-
checkLimit('concurrentAgents', 'Approaching concurrent agent limit', usage.concurrentAgents, limits.maxConcurrentAgents);
|
|
98
|
-
checkLimit('computeHours', 'Approaching compute hours limit', usage.computeHoursThisMonth, limits.maxComputeHoursPerMonth);
|
|
99
|
-
res.json({
|
|
100
|
-
plan,
|
|
101
|
-
coordinatorsEnabled: limits.coordinatorsEnabled,
|
|
102
|
-
status: warnings.length > 0 ? 'warning' : 'healthy',
|
|
103
|
-
warnings,
|
|
104
|
-
});
|
|
105
|
-
}
|
|
106
|
-
catch (error) {
|
|
107
|
-
console.error('Error getting usage summary:', error);
|
|
108
|
-
res.status(500).json({ error: 'Failed to get usage summary' });
|
|
109
|
-
}
|
|
110
|
-
});
|
|
111
|
-
//# sourceMappingURL=usage.js.map
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Webhook API Routes
|
|
3
|
-
*
|
|
4
|
-
* Handles GitHub App webhooks for installation events.
|
|
5
|
-
* Also provides workspace webhook forwarding for external integrations.
|
|
6
|
-
*/
|
|
7
|
-
export declare const webhooksRouter: import("express-serve-static-core").Router;
|
|
8
|
-
//# sourceMappingURL=webhooks.d.ts.map
|