agentscore-mcp 1.0.3
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/LICENSE +21 -0
- package/README.md +404 -0
- package/dist/adapters/demo/adapter.d.ts +22 -0
- package/dist/adapters/demo/adapter.d.ts.map +1 -0
- package/dist/adapters/demo/adapter.js +67 -0
- package/dist/adapters/demo/adapter.js.map +1 -0
- package/dist/adapters/demo/agents.d.ts +19 -0
- package/dist/adapters/demo/agents.d.ts.map +1 -0
- package/dist/adapters/demo/agents.js +480 -0
- package/dist/adapters/demo/agents.js.map +1 -0
- package/dist/adapters/github/adapter.d.ts +15 -0
- package/dist/adapters/github/adapter.d.ts.map +1 -0
- package/dist/adapters/github/adapter.js +75 -0
- package/dist/adapters/github/adapter.js.map +1 -0
- package/dist/adapters/github/client.d.ts +22 -0
- package/dist/adapters/github/client.d.ts.map +1 -0
- package/dist/adapters/github/client.js +220 -0
- package/dist/adapters/github/client.js.map +1 -0
- package/dist/adapters/github/mapper.d.ts +18 -0
- package/dist/adapters/github/mapper.d.ts.map +1 -0
- package/dist/adapters/github/mapper.js +132 -0
- package/dist/adapters/github/mapper.js.map +1 -0
- package/dist/adapters/github/types.d.ts +117 -0
- package/dist/adapters/github/types.d.ts.map +1 -0
- package/dist/adapters/github/types.js +3 -0
- package/dist/adapters/github/types.js.map +1 -0
- package/dist/adapters/json/adapter.d.ts +36 -0
- package/dist/adapters/json/adapter.d.ts.map +1 -0
- package/dist/adapters/json/adapter.js +149 -0
- package/dist/adapters/json/adapter.js.map +1 -0
- package/dist/adapters/moltbook/adapter.d.ts +18 -0
- package/dist/adapters/moltbook/adapter.d.ts.map +1 -0
- package/dist/adapters/moltbook/adapter.js +119 -0
- package/dist/adapters/moltbook/adapter.js.map +1 -0
- package/dist/adapters/moltbook/client.d.ts +14 -0
- package/dist/adapters/moltbook/client.d.ts.map +1 -0
- package/dist/adapters/moltbook/client.js +165 -0
- package/dist/adapters/moltbook/client.js.map +1 -0
- package/dist/adapters/moltbook/types.d.ts +57 -0
- package/dist/adapters/moltbook/types.d.ts.map +1 -0
- package/dist/adapters/moltbook/types.js +3 -0
- package/dist/adapters/moltbook/types.js.map +1 -0
- package/dist/adapters/types.d.ts +45 -0
- package/dist/adapters/types.d.ts.map +1 -0
- package/dist/adapters/types.js +2 -0
- package/dist/adapters/types.js.map +1 -0
- package/dist/cache/score-cache.d.ts +22 -0
- package/dist/cache/score-cache.d.ts.map +1 -0
- package/dist/cache/score-cache.js +48 -0
- package/dist/cache/score-cache.js.map +1 -0
- package/dist/config.d.ts +15 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +72 -0
- package/dist/config.js.map +1 -0
- package/dist/scoring/briefing.d.ts +5 -0
- package/dist/scoring/briefing.d.ts.map +1 -0
- package/dist/scoring/briefing.js +124 -0
- package/dist/scoring/briefing.js.map +1 -0
- package/dist/scoring/categories/account-health.d.ts +4 -0
- package/dist/scoring/categories/account-health.d.ts.map +1 -0
- package/dist/scoring/categories/account-health.js +67 -0
- package/dist/scoring/categories/account-health.js.map +1 -0
- package/dist/scoring/categories/behavioral-consistency.d.ts +4 -0
- package/dist/scoring/categories/behavioral-consistency.d.ts.map +1 -0
- package/dist/scoring/categories/behavioral-consistency.js +66 -0
- package/dist/scoring/categories/behavioral-consistency.js.map +1 -0
- package/dist/scoring/categories/community-standing.d.ts +4 -0
- package/dist/scoring/categories/community-standing.d.ts.map +1 -0
- package/dist/scoring/categories/community-standing.js +45 -0
- package/dist/scoring/categories/community-standing.js.map +1 -0
- package/dist/scoring/categories/content-quality.d.ts +4 -0
- package/dist/scoring/categories/content-quality.d.ts.map +1 -0
- package/dist/scoring/categories/content-quality.js +42 -0
- package/dist/scoring/categories/content-quality.js.map +1 -0
- package/dist/scoring/categories/interaction-quality.d.ts +4 -0
- package/dist/scoring/categories/interaction-quality.d.ts.map +1 -0
- package/dist/scoring/categories/interaction-quality.js +49 -0
- package/dist/scoring/categories/interaction-quality.js.map +1 -0
- package/dist/scoring/categories/risk-signals.d.ts +8 -0
- package/dist/scoring/categories/risk-signals.d.ts.map +1 -0
- package/dist/scoring/categories/risk-signals.js +69 -0
- package/dist/scoring/categories/risk-signals.js.map +1 -0
- package/dist/scoring/engine.d.ts +7 -0
- package/dist/scoring/engine.d.ts.map +1 -0
- package/dist/scoring/engine.js +165 -0
- package/dist/scoring/engine.js.map +1 -0
- package/dist/scoring/tiers.d.ts +11 -0
- package/dist/scoring/tiers.d.ts.map +1 -0
- package/dist/scoring/tiers.js +17 -0
- package/dist/scoring/tiers.js.map +1 -0
- package/dist/scoring/types.d.ts +39 -0
- package/dist/scoring/types.d.ts.map +1 -0
- package/dist/scoring/types.js +2 -0
- package/dist/scoring/types.js.map +1 -0
- package/dist/scoring/utils.d.ts +9 -0
- package/dist/scoring/utils.d.ts.map +1 -0
- package/dist/scoring/utils.js +48 -0
- package/dist/scoring/utils.js.map +1 -0
- package/dist/security/client-key.d.ts +6 -0
- package/dist/security/client-key.d.ts.map +1 -0
- package/dist/security/client-key.js +42 -0
- package/dist/security/client-key.js.map +1 -0
- package/dist/security/rate-limiter.d.ts +24 -0
- package/dist/security/rate-limiter.d.ts.map +1 -0
- package/dist/security/rate-limiter.js +47 -0
- package/dist/security/rate-limiter.js.map +1 -0
- package/dist/server.d.ts +3 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +83 -0
- package/dist/server.js.map +1 -0
- package/dist/tools/agentscore.d.ts +5 -0
- package/dist/tools/agentscore.d.ts.map +1 -0
- package/dist/tools/agentscore.js +149 -0
- package/dist/tools/agentscore.js.map +1 -0
- package/dist/tools/sweep.d.ts +5 -0
- package/dist/tools/sweep.d.ts.map +1 -0
- package/dist/tools/sweep.js +280 -0
- package/dist/tools/sweep.js.map +1 -0
- package/dist/version.d.ts +2 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +2 -0
- package/dist/version.js.map +1 -0
- package/package.json +58 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../../../src/adapters/demo/agents.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { AgentPlatformAdapter, AgentProfile, AgentContent } from "../types.js";
|
|
2
|
+
/** GitHub platform adapter — scores any public GitHub account. */
|
|
3
|
+
export declare class GitHubAdapter implements AgentPlatformAdapter {
|
|
4
|
+
readonly name = "github";
|
|
5
|
+
readonly version = "1.0.3";
|
|
6
|
+
private client;
|
|
7
|
+
constructor();
|
|
8
|
+
fetchProfile(handle: string): Promise<AgentProfile | null>;
|
|
9
|
+
fetchContent(handle: string, limit?: number): Promise<AgentContent[]>;
|
|
10
|
+
fetchInteractions(handle: string): Promise<AgentContent[]>;
|
|
11
|
+
fetchThreadContent(threadId: string): Promise<AgentContent[]>;
|
|
12
|
+
fetchThreadParticipants(threadId: string): Promise<AgentProfile[]>;
|
|
13
|
+
isAvailable(): Promise<boolean>;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/github/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAYpF,kEAAkE;AAClE,qBAAa,aAAc,YAAW,oBAAoB;IACxD,QAAQ,CAAC,IAAI,YAAY;IACzB,QAAQ,CAAC,OAAO,WAAsB;IACtC,OAAO,CAAC,MAAM,CAAe;;IAMvB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAe1D,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAKjE,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAW1D,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAe7D,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAwBlE,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;CAGtC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { GitHubClient } from "./client.js";
|
|
2
|
+
import { mapProfile, mapSearchIssueToContent, mapEventToContent, mapIssueToContent, mapCommentToContent, parseThreadId, } from "./mapper.js";
|
|
3
|
+
import { AGENTSCORE_VERSION } from "../../version.js";
|
|
4
|
+
/** GitHub platform adapter — scores any public GitHub account. */
|
|
5
|
+
export class GitHubAdapter {
|
|
6
|
+
name = "github";
|
|
7
|
+
version = AGENTSCORE_VERSION;
|
|
8
|
+
client;
|
|
9
|
+
constructor() {
|
|
10
|
+
this.client = new GitHubClient();
|
|
11
|
+
}
|
|
12
|
+
async fetchProfile(handle) {
|
|
13
|
+
const user = await this.client.fetchUser(handle);
|
|
14
|
+
if (!user)
|
|
15
|
+
return null;
|
|
16
|
+
const repos = await this.client.fetchUserRepos(handle);
|
|
17
|
+
// For bot accounts, try to look up the owning app
|
|
18
|
+
let app = null;
|
|
19
|
+
if (user.type === "Bot") {
|
|
20
|
+
app = await this.client.fetchApp(handle);
|
|
21
|
+
}
|
|
22
|
+
return mapProfile(user, repos, app);
|
|
23
|
+
}
|
|
24
|
+
async fetchContent(handle, limit = 30) {
|
|
25
|
+
const result = await this.client.searchIssues(`author:${handle}`, limit);
|
|
26
|
+
return result.items.map(mapSearchIssueToContent);
|
|
27
|
+
}
|
|
28
|
+
async fetchInteractions(handle) {
|
|
29
|
+
const events = await this.client.fetchUserEvents(handle);
|
|
30
|
+
const interactions = [];
|
|
31
|
+
for (const event of events) {
|
|
32
|
+
const content = mapEventToContent(event);
|
|
33
|
+
if (content)
|
|
34
|
+
interactions.push(content);
|
|
35
|
+
}
|
|
36
|
+
return interactions;
|
|
37
|
+
}
|
|
38
|
+
async fetchThreadContent(threadId) {
|
|
39
|
+
const { owner, repo, number } = parseThreadId(threadId);
|
|
40
|
+
const issue = await this.client.fetchIssue(owner, repo, number);
|
|
41
|
+
if (!issue)
|
|
42
|
+
return [];
|
|
43
|
+
const comments = await this.client.fetchIssueComments(owner, repo, number);
|
|
44
|
+
const content = [mapIssueToContent(issue)];
|
|
45
|
+
for (const comment of comments) {
|
|
46
|
+
content.push(mapCommentToContent(comment));
|
|
47
|
+
}
|
|
48
|
+
return content;
|
|
49
|
+
}
|
|
50
|
+
async fetchThreadParticipants(threadId) {
|
|
51
|
+
const { owner, repo, number } = parseThreadId(threadId);
|
|
52
|
+
const issue = await this.client.fetchIssue(owner, repo, number);
|
|
53
|
+
if (!issue)
|
|
54
|
+
return [];
|
|
55
|
+
const comments = await this.client.fetchIssueComments(owner, repo, number);
|
|
56
|
+
// Collect unique usernames
|
|
57
|
+
const handles = new Set();
|
|
58
|
+
handles.add(issue.user.login);
|
|
59
|
+
for (const comment of comments) {
|
|
60
|
+
handles.add(comment.user.login);
|
|
61
|
+
}
|
|
62
|
+
// Fetch profile for each unique participant
|
|
63
|
+
const profiles = [];
|
|
64
|
+
for (const handle of handles) {
|
|
65
|
+
const profile = await this.fetchProfile(handle);
|
|
66
|
+
if (profile)
|
|
67
|
+
profiles.push(profile);
|
|
68
|
+
}
|
|
69
|
+
return profiles;
|
|
70
|
+
}
|
|
71
|
+
async isAvailable() {
|
|
72
|
+
return this.client.isAvailable();
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/adapters/github/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { GitHubUser, GitHubRepo, GitHubSearchResult, GitHubEvent, GitHubIssue, GitHubComment, GitHubRateLimit, GitHubApp } from "./types.js";
|
|
2
|
+
/** GitHub API client with retry, caching, and rate limit awareness. */
|
|
3
|
+
export declare class GitHubClient {
|
|
4
|
+
private token;
|
|
5
|
+
private cache;
|
|
6
|
+
constructor();
|
|
7
|
+
private get headers();
|
|
8
|
+
private getCached;
|
|
9
|
+
private setCache;
|
|
10
|
+
private fetchWithRetry;
|
|
11
|
+
private get;
|
|
12
|
+
fetchUser(username: string): Promise<GitHubUser | null>;
|
|
13
|
+
fetchUserRepos(username: string): Promise<GitHubRepo[]>;
|
|
14
|
+
searchIssues(query: string, limit?: number): Promise<GitHubSearchResult>;
|
|
15
|
+
fetchUserEvents(username: string): Promise<GitHubEvent[]>;
|
|
16
|
+
fetchIssue(owner: string, repo: string, number: number): Promise<GitHubIssue | null>;
|
|
17
|
+
fetchIssueComments(owner: string, repo: string, number: number, maxPages?: number): Promise<GitHubComment[]>;
|
|
18
|
+
fetchApp(slug: string): Promise<GitHubApp | null>;
|
|
19
|
+
checkRateLimit(): Promise<GitHubRateLimit | null>;
|
|
20
|
+
isAvailable(): Promise<boolean>;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/adapters/github/client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,kBAAkB,EAClB,WAAW,EACX,WAAW,EACX,aAAa,EACb,eAAe,EACf,SAAS,EAEV,MAAM,YAAY,CAAC;AAqDpB,uEAAuE;AACvE,qBAAa,YAAY;IACvB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,KAAK,CAA0C;;IAMvD,OAAO,KAAK,OAAO,GASlB;IAED,OAAO,CAAC,SAAS;IAUjB,OAAO,CAAC,QAAQ;YASF,cAAc;YAkDd,GAAG;IAsCX,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAIvD,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAOvD,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAQpE,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAOzD,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAOpF,kBAAkB,CACtB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,QAAQ,SAAI,GACX,OAAO,CAAC,aAAa,EAAE,CAAC;IAarB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAIjD,cAAc,IAAI,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAIjD,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;CAUtC"}
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { getConfig } from "../../config.js";
|
|
3
|
+
const GitHubUserSchema = z.object({
|
|
4
|
+
login: z.string(),
|
|
5
|
+
name: z.string().nullable(),
|
|
6
|
+
bio: z.string().nullable(),
|
|
7
|
+
company: z.string().nullable(),
|
|
8
|
+
blog: z.string().nullable(),
|
|
9
|
+
type: z.enum(["User", "Organization", "Bot"]),
|
|
10
|
+
followers: z.number(),
|
|
11
|
+
following: z.number(),
|
|
12
|
+
public_repos: z.number(),
|
|
13
|
+
created_at: z.string(),
|
|
14
|
+
});
|
|
15
|
+
const GitHubReactionsSchema = z.object({
|
|
16
|
+
"+1": z.number(),
|
|
17
|
+
"-1": z.number(),
|
|
18
|
+
laugh: z.number(),
|
|
19
|
+
hooray: z.number(),
|
|
20
|
+
confused: z.number(),
|
|
21
|
+
heart: z.number(),
|
|
22
|
+
rocket: z.number(),
|
|
23
|
+
eyes: z.number(),
|
|
24
|
+
});
|
|
25
|
+
const GitHubIssueSchema = z.object({
|
|
26
|
+
id: z.number(),
|
|
27
|
+
number: z.number(),
|
|
28
|
+
title: z.string(),
|
|
29
|
+
body: z.string().nullable(),
|
|
30
|
+
state: z.string(),
|
|
31
|
+
comments: z.number(),
|
|
32
|
+
created_at: z.string(),
|
|
33
|
+
user: z.object({ login: z.string(), type: z.string() }),
|
|
34
|
+
reactions: GitHubReactionsSchema,
|
|
35
|
+
html_url: z.string(),
|
|
36
|
+
});
|
|
37
|
+
const GitHubCommentSchema = z.object({
|
|
38
|
+
id: z.number(),
|
|
39
|
+
body: z.string(),
|
|
40
|
+
created_at: z.string(),
|
|
41
|
+
user: z.object({ login: z.string(), type: z.string() }),
|
|
42
|
+
reactions: GitHubReactionsSchema,
|
|
43
|
+
});
|
|
44
|
+
const BASE_URL = "https://api.github.com";
|
|
45
|
+
const CACHE_TTL_MS = 5 * 60 * 1000; // 5 minutes
|
|
46
|
+
const MAX_CACHE_ENTRIES = 100;
|
|
47
|
+
const MAX_RETRIES = 3;
|
|
48
|
+
/** GitHub API client with retry, caching, and rate limit awareness. */
|
|
49
|
+
export class GitHubClient {
|
|
50
|
+
token;
|
|
51
|
+
cache = new Map();
|
|
52
|
+
constructor() {
|
|
53
|
+
this.token = getConfig().githubToken;
|
|
54
|
+
}
|
|
55
|
+
get headers() {
|
|
56
|
+
const h = {
|
|
57
|
+
Accept: "application/vnd.github+json",
|
|
58
|
+
"X-GitHub-Api-Version": "2022-11-28",
|
|
59
|
+
};
|
|
60
|
+
if (this.token) {
|
|
61
|
+
h.Authorization = `Bearer ${this.token}`;
|
|
62
|
+
}
|
|
63
|
+
return h;
|
|
64
|
+
}
|
|
65
|
+
getCached(url) {
|
|
66
|
+
const entry = this.cache.get(url);
|
|
67
|
+
if (!entry)
|
|
68
|
+
return undefined;
|
|
69
|
+
if (Date.now() - entry.cachedAt > CACHE_TTL_MS) {
|
|
70
|
+
this.cache.delete(url);
|
|
71
|
+
return undefined;
|
|
72
|
+
}
|
|
73
|
+
return entry.data;
|
|
74
|
+
}
|
|
75
|
+
setCache(url, data) {
|
|
76
|
+
// Evict oldest entries if at capacity
|
|
77
|
+
if (this.cache.size >= MAX_CACHE_ENTRIES) {
|
|
78
|
+
const firstKey = this.cache.keys().next().value;
|
|
79
|
+
if (firstKey !== undefined)
|
|
80
|
+
this.cache.delete(firstKey);
|
|
81
|
+
}
|
|
82
|
+
this.cache.set(url, { data, cachedAt: Date.now() });
|
|
83
|
+
}
|
|
84
|
+
async fetchWithRetry(url) {
|
|
85
|
+
for (let attempt = 0; attempt <= MAX_RETRIES; attempt++) {
|
|
86
|
+
try {
|
|
87
|
+
const response = await fetch(url, { headers: this.headers, signal: AbortSignal.timeout(15_000) });
|
|
88
|
+
// Parse rate limit headers
|
|
89
|
+
const remaining = parseInt(response.headers.get("X-RateLimit-Remaining") || "-1", 10);
|
|
90
|
+
const resetTs = parseInt(response.headers.get("X-RateLimit-Reset") || "0", 10);
|
|
91
|
+
const retryAfter = parseInt(response.headers.get("Retry-After") || "0", 10);
|
|
92
|
+
if (remaining >= 0 && remaining < 10) {
|
|
93
|
+
const resetDate = new Date(resetTs * 1000).toLocaleTimeString();
|
|
94
|
+
console.error(`[agentscore] GitHub rate limit low: ${remaining} remaining, resets at ${resetDate}`);
|
|
95
|
+
}
|
|
96
|
+
// Handle primary (403/429) and secondary (Retry-After) rate limiting
|
|
97
|
+
const isRateLimited = response.status === 429 ||
|
|
98
|
+
(response.status === 403 && (remaining === 0 || retryAfter > 0));
|
|
99
|
+
if (isRateLimited) {
|
|
100
|
+
if (attempt < MAX_RETRIES) {
|
|
101
|
+
const sleepMs = retryAfter > 0
|
|
102
|
+
? retryAfter * 1000
|
|
103
|
+
: resetTs > 0
|
|
104
|
+
? Math.max((resetTs * 1000) - Date.now(), 1000)
|
|
105
|
+
: Math.pow(2, attempt) * 1000;
|
|
106
|
+
console.error(`[agentscore] GitHub rate limited (${response.status}) — sleeping ${Math.round(sleepMs / 1000)}s`);
|
|
107
|
+
await new Promise((resolve) => setTimeout(resolve, sleepMs));
|
|
108
|
+
continue;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
// Retry on server errors
|
|
112
|
+
if (response.status >= 500 && attempt < MAX_RETRIES) {
|
|
113
|
+
const backoff = Math.pow(2, attempt) * 1000;
|
|
114
|
+
await new Promise((resolve) => setTimeout(resolve, backoff));
|
|
115
|
+
continue;
|
|
116
|
+
}
|
|
117
|
+
return response;
|
|
118
|
+
}
|
|
119
|
+
catch (error) {
|
|
120
|
+
if (attempt === MAX_RETRIES)
|
|
121
|
+
throw error;
|
|
122
|
+
const backoff = Math.pow(2, attempt) * 1000;
|
|
123
|
+
await new Promise((resolve) => setTimeout(resolve, backoff));
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
throw new Error("Max retries exceeded");
|
|
127
|
+
}
|
|
128
|
+
async get(url, schema) {
|
|
129
|
+
const cached = this.getCached(url);
|
|
130
|
+
if (cached !== undefined)
|
|
131
|
+
return cached;
|
|
132
|
+
try {
|
|
133
|
+
const response = await this.fetchWithRetry(url);
|
|
134
|
+
if (response.status === 404)
|
|
135
|
+
return null;
|
|
136
|
+
if (response.status === 422)
|
|
137
|
+
return null; // Complex search queries can 422
|
|
138
|
+
if (!response.ok) {
|
|
139
|
+
const remaining = parseInt(response.headers.get("X-RateLimit-Remaining") || "-1", 10);
|
|
140
|
+
const retryAfter = response.headers.get("Retry-After");
|
|
141
|
+
if (response.status === 403 && (remaining === 0 || !!retryAfter)) {
|
|
142
|
+
console.error(`[agentscore] GitHub API rate limit exhausted for ${url}`);
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
console.error(`[agentscore] GitHub API error: ${response.status} for ${url}`);
|
|
146
|
+
}
|
|
147
|
+
return null;
|
|
148
|
+
}
|
|
149
|
+
const json = await response.json();
|
|
150
|
+
let data;
|
|
151
|
+
if (schema) {
|
|
152
|
+
const result = schema.safeParse(json);
|
|
153
|
+
if (!result.success) {
|
|
154
|
+
console.error(`[agentscore] GitHub response validation failed for ${url}:`, result.error.message);
|
|
155
|
+
return null;
|
|
156
|
+
}
|
|
157
|
+
data = result.data;
|
|
158
|
+
}
|
|
159
|
+
else {
|
|
160
|
+
data = json;
|
|
161
|
+
}
|
|
162
|
+
this.setCache(url, data);
|
|
163
|
+
return data;
|
|
164
|
+
}
|
|
165
|
+
catch (error) {
|
|
166
|
+
console.error(`[agentscore] GitHub fetch error for ${url}:`, error);
|
|
167
|
+
return null;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
async fetchUser(username) {
|
|
171
|
+
return this.get(`${BASE_URL}/users/${encodeURIComponent(username)}`, GitHubUserSchema);
|
|
172
|
+
}
|
|
173
|
+
async fetchUserRepos(username) {
|
|
174
|
+
const repos = await this.get(`${BASE_URL}/users/${encodeURIComponent(username)}/repos?sort=stars&direction=desc&per_page=30`);
|
|
175
|
+
return repos || [];
|
|
176
|
+
}
|
|
177
|
+
async searchIssues(query, limit = 30) {
|
|
178
|
+
const perPage = Math.min(limit, 100);
|
|
179
|
+
const result = await this.get(`${BASE_URL}/search/issues?q=${encodeURIComponent(query)}&per_page=${perPage}&sort=created&order=desc`);
|
|
180
|
+
return result || { total_count: 0, incomplete_results: false, items: [] };
|
|
181
|
+
}
|
|
182
|
+
async fetchUserEvents(username) {
|
|
183
|
+
const events = await this.get(`${BASE_URL}/users/${encodeURIComponent(username)}/events/public?per_page=100`);
|
|
184
|
+
return events || [];
|
|
185
|
+
}
|
|
186
|
+
async fetchIssue(owner, repo, number) {
|
|
187
|
+
return this.get(`${BASE_URL}/repos/${encodeURIComponent(owner)}/${encodeURIComponent(repo)}/issues/${number}`, GitHubIssueSchema);
|
|
188
|
+
}
|
|
189
|
+
async fetchIssueComments(owner, repo, number, maxPages = 3) {
|
|
190
|
+
const allComments = [];
|
|
191
|
+
for (let page = 1; page <= maxPages; page++) {
|
|
192
|
+
const url = `${BASE_URL}/repos/${encodeURIComponent(owner)}/${encodeURIComponent(repo)}` +
|
|
193
|
+
`/issues/${number}/comments?per_page=100&page=${page}`;
|
|
194
|
+
const comments = await this.get(url, z.array(GitHubCommentSchema));
|
|
195
|
+
if (!comments || comments.length === 0)
|
|
196
|
+
break;
|
|
197
|
+
allComments.push(...comments);
|
|
198
|
+
}
|
|
199
|
+
return allComments;
|
|
200
|
+
}
|
|
201
|
+
async fetchApp(slug) {
|
|
202
|
+
return this.get(`${BASE_URL}/apps/${encodeURIComponent(slug)}`);
|
|
203
|
+
}
|
|
204
|
+
async checkRateLimit() {
|
|
205
|
+
return this.get(`${BASE_URL}/rate_limit`);
|
|
206
|
+
}
|
|
207
|
+
async isAvailable() {
|
|
208
|
+
try {
|
|
209
|
+
const limits = await this.checkRateLimit();
|
|
210
|
+
if (!limits)
|
|
211
|
+
return false;
|
|
212
|
+
const threshold = this.token ? 20 : 5;
|
|
213
|
+
return limits.resources.core.remaining >= threshold;
|
|
214
|
+
}
|
|
215
|
+
catch {
|
|
216
|
+
return false;
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/adapters/github/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { AgentProfile, AgentContent } from "../types.js";
|
|
2
|
+
import type { GitHubUser, GitHubRepo, GitHubSearchIssue, GitHubEvent, GitHubIssue, GitHubComment, GitHubApp } from "./types.js";
|
|
3
|
+
/** Pure transformation functions — no network calls, no side effects. */
|
|
4
|
+
export declare function computeKarma(user: GitHubUser, repos: GitHubRepo[]): number;
|
|
5
|
+
export declare function isClaimed(user: GitHubUser): boolean;
|
|
6
|
+
export declare function mapOwner(user: GitHubUser, app: GitHubApp | null): AgentProfile["owner"];
|
|
7
|
+
export declare function mapProfile(user: GitHubUser, repos: GitHubRepo[], app: GitHubApp | null): AgentProfile;
|
|
8
|
+
export declare function mapSearchIssueToContent(issue: GitHubSearchIssue): AgentContent;
|
|
9
|
+
export declare function mapEventToContent(event: GitHubEvent): AgentContent | null;
|
|
10
|
+
export declare function mapIssueToContent(issue: GitHubIssue): AgentContent;
|
|
11
|
+
export declare function mapCommentToContent(comment: GitHubComment): AgentContent;
|
|
12
|
+
/** Parse thread ID format: "owner/repo/issues/123" (pulls also accepted) */
|
|
13
|
+
export declare function parseThreadId(threadId: string): {
|
|
14
|
+
owner: string;
|
|
15
|
+
repo: string;
|
|
16
|
+
number: number;
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=mapper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mapper.d.ts","sourceRoot":"","sources":["../../../src/adapters/github/mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,iBAAiB,EACjB,WAAW,EACX,WAAW,EACX,aAAa,EAEb,SAAS,EACV,MAAM,YAAY,CAAC;AAEpB,yEAAyE;AAEzE,wBAAgB,YAAY,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,MAAM,CAG1E;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAGnD;AAED,wBAAgB,QAAQ,CACtB,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,SAAS,GAAG,IAAI,GACpB,YAAY,CAAC,OAAO,CAAC,CAQvB;AAED,wBAAgB,UAAU,CACxB,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,UAAU,EAAE,EACnB,GAAG,EAAE,SAAS,GAAG,IAAI,GACpB,YAAY,CAiBd;AAeD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,iBAAiB,GAAG,YAAY,CAa9E;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,YAAY,GAAG,IAAI,CA8BzE;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,YAAY,CAYlE;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,aAAa,GAAG,YAAY,CAWxE;AAED,4EAA4E;AAC5E,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAe/F"}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
/** Pure transformation functions — no network calls, no side effects. */
|
|
2
|
+
export function computeKarma(user, repos) {
|
|
3
|
+
const totalStars = repos.reduce((sum, r) => sum + r.stargazers_count, 0);
|
|
4
|
+
return (user.followers * 3) + (totalStars * 2) + user.public_repos;
|
|
5
|
+
}
|
|
6
|
+
export function isClaimed(user) {
|
|
7
|
+
if (user.type === "Bot")
|
|
8
|
+
return true;
|
|
9
|
+
return !!(user.name && (user.bio || user.company || user.blog));
|
|
10
|
+
}
|
|
11
|
+
export function mapOwner(user, app) {
|
|
12
|
+
// Only bot accounts get owner mapping
|
|
13
|
+
if (user.type !== "Bot" || !app?.owner)
|
|
14
|
+
return undefined;
|
|
15
|
+
return {
|
|
16
|
+
username: app.owner.login,
|
|
17
|
+
verified: true, // GitHub-verified bot association
|
|
18
|
+
followers: 0, // Not available from /apps endpoint
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
export function mapProfile(user, repos, app) {
|
|
22
|
+
return {
|
|
23
|
+
handle: user.login,
|
|
24
|
+
displayName: user.name || user.login,
|
|
25
|
+
description: user.bio || "",
|
|
26
|
+
platform: "github",
|
|
27
|
+
karma: computeKarma(user, repos),
|
|
28
|
+
followers: user.followers,
|
|
29
|
+
following: user.following,
|
|
30
|
+
createdAt: user.created_at,
|
|
31
|
+
claimed: isClaimed(user),
|
|
32
|
+
owner: mapOwner(user, app),
|
|
33
|
+
metadata: {
|
|
34
|
+
type: user.type,
|
|
35
|
+
publicRepos: user.public_repos,
|
|
36
|
+
},
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
function repoFromUrl(repositoryUrl) {
|
|
40
|
+
// "https://api.github.com/repos/owner/repo" → "owner/repo"
|
|
41
|
+
const parts = repositoryUrl.split("/repos/");
|
|
42
|
+
return parts[1] || repositoryUrl;
|
|
43
|
+
}
|
|
44
|
+
function reactionsToVotes(reactions) {
|
|
45
|
+
return {
|
|
46
|
+
upvotes: reactions["+1"] + reactions.heart + reactions.hooray + reactions.rocket,
|
|
47
|
+
downvotes: reactions["-1"] + reactions.confused,
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
export function mapSearchIssueToContent(issue) {
|
|
51
|
+
const votes = reactionsToVotes(issue.reactions);
|
|
52
|
+
return {
|
|
53
|
+
id: String(issue.id),
|
|
54
|
+
type: "post",
|
|
55
|
+
content: issue.body || "",
|
|
56
|
+
title: issue.title,
|
|
57
|
+
upvotes: votes.upvotes,
|
|
58
|
+
downvotes: votes.downvotes,
|
|
59
|
+
replyCount: issue.comments,
|
|
60
|
+
channel: repoFromUrl(issue.repository_url),
|
|
61
|
+
createdAt: issue.created_at,
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
export function mapEventToContent(event) {
|
|
65
|
+
const comment = event.payload.comment;
|
|
66
|
+
const review = event.payload.review;
|
|
67
|
+
let body = null;
|
|
68
|
+
let id;
|
|
69
|
+
let createdAt;
|
|
70
|
+
if (comment) {
|
|
71
|
+
body = comment.body;
|
|
72
|
+
id = String(comment.id);
|
|
73
|
+
createdAt = comment.created_at;
|
|
74
|
+
}
|
|
75
|
+
else if (review && review.body) {
|
|
76
|
+
body = review.body;
|
|
77
|
+
id = String(review.id);
|
|
78
|
+
createdAt = review.submitted_at;
|
|
79
|
+
}
|
|
80
|
+
else {
|
|
81
|
+
return null; // Skip events without textual content
|
|
82
|
+
}
|
|
83
|
+
return {
|
|
84
|
+
id,
|
|
85
|
+
type: "comment",
|
|
86
|
+
content: body || "",
|
|
87
|
+
upvotes: 0,
|
|
88
|
+
downvotes: 0,
|
|
89
|
+
replyCount: 0,
|
|
90
|
+
channel: event.repo.name,
|
|
91
|
+
createdAt,
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
export function mapIssueToContent(issue) {
|
|
95
|
+
const votes = reactionsToVotes(issue.reactions);
|
|
96
|
+
return {
|
|
97
|
+
id: String(issue.id),
|
|
98
|
+
type: "post",
|
|
99
|
+
content: issue.body || "",
|
|
100
|
+
title: issue.title,
|
|
101
|
+
upvotes: votes.upvotes,
|
|
102
|
+
downvotes: votes.downvotes,
|
|
103
|
+
replyCount: issue.comments,
|
|
104
|
+
createdAt: issue.created_at,
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
export function mapCommentToContent(comment) {
|
|
108
|
+
const votes = reactionsToVotes(comment.reactions);
|
|
109
|
+
return {
|
|
110
|
+
id: String(comment.id),
|
|
111
|
+
type: "reply",
|
|
112
|
+
content: comment.body,
|
|
113
|
+
upvotes: votes.upvotes,
|
|
114
|
+
downvotes: votes.downvotes,
|
|
115
|
+
replyCount: 0,
|
|
116
|
+
createdAt: comment.created_at,
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
/** Parse thread ID format: "owner/repo/issues/123" (pulls also accepted) */
|
|
120
|
+
export function parseThreadId(threadId) {
|
|
121
|
+
const parts = threadId.split("/");
|
|
122
|
+
const kind = parts[2];
|
|
123
|
+
if (parts.length !== 4 || (kind !== "issues" && kind !== "pulls" && kind !== "pull")) {
|
|
124
|
+
throw new Error(`Invalid GitHub thread ID: "${threadId}". Expected format: owner/repo/issues/123 (or owner/repo/pulls/123)`);
|
|
125
|
+
}
|
|
126
|
+
const num = parseInt(parts[3], 10);
|
|
127
|
+
if (isNaN(num) || num <= 0) {
|
|
128
|
+
throw new Error(`Invalid issue number in thread ID: "${threadId}". Expected a positive integer.`);
|
|
129
|
+
}
|
|
130
|
+
return { owner: parts[0], repo: parts[1], number: num };
|
|
131
|
+
}
|
|
132
|
+
//# sourceMappingURL=mapper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mapper.js","sourceRoot":"","sources":["../../../src/adapters/github/mapper.ts"],"names":[],"mappings":"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"}
|