@bretwardjames/ghp-core 0.6.1 → 0.7.1
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/index.cjs +550 -2
- package/dist/index.d.cts +93 -3
- package/dist/index.d.ts +93 -3
- package/dist/index.js +548 -2
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -121,6 +121,7 @@ interface ProjectItem {
|
|
|
121
121
|
subIssues: RelatedIssue[];
|
|
122
122
|
blockedBy: BlockingIssue[];
|
|
123
123
|
blocking: BlockingIssue[];
|
|
124
|
+
updatedAt: string | null;
|
|
124
125
|
}
|
|
125
126
|
/**
|
|
126
127
|
* Status field information for a project
|
|
@@ -424,6 +425,28 @@ interface BlockingRelationships {
|
|
|
424
425
|
/** Issues that this issue is blocking (these are blocked by this issue) */
|
|
425
426
|
blocking: BlockingIssue[];
|
|
426
427
|
}
|
|
428
|
+
/**
|
|
429
|
+
* Activity summary for a single issue/PR
|
|
430
|
+
*/
|
|
431
|
+
interface IssueActivity {
|
|
432
|
+
issue: {
|
|
433
|
+
number: number;
|
|
434
|
+
title: string;
|
|
435
|
+
url: string;
|
|
436
|
+
};
|
|
437
|
+
status: string | null;
|
|
438
|
+
assignees: string[];
|
|
439
|
+
changes: ActivityEvent[];
|
|
440
|
+
}
|
|
441
|
+
/**
|
|
442
|
+
* A single activity event on an issue
|
|
443
|
+
*/
|
|
444
|
+
interface ActivityEvent {
|
|
445
|
+
type: 'comment' | 'assigned' | 'unassigned' | 'labeled' | 'unlabeled' | 'closed' | 'reopened' | 'referenced' | 'review_submitted' | 'review_requested' | 'pr_created' | 'pr_merged';
|
|
446
|
+
actor: string;
|
|
447
|
+
timestamp: string;
|
|
448
|
+
details?: string;
|
|
449
|
+
}
|
|
427
450
|
|
|
428
451
|
/**
|
|
429
452
|
* GitHub API client for Projects V2.
|
|
@@ -658,6 +681,30 @@ declare class GitHubAPI {
|
|
|
658
681
|
* Get issue relationships (parent, sub-issues, and blocking relationships)
|
|
659
682
|
*/
|
|
660
683
|
getIssueRelationships(repo: RepoInfo, issueNumber: number): Promise<IssueRelationships | null>;
|
|
684
|
+
/**
|
|
685
|
+
* Get recent activity across all project items since a given time.
|
|
686
|
+
* Multi-pass approach:
|
|
687
|
+
* Pass 1: Fetch all project items, filter by updatedAt client-side
|
|
688
|
+
* Pass 2: Fetch timeline events only for items that changed
|
|
689
|
+
* Pass 3: Search for PRs reviewed by user (not captured in project items)
|
|
690
|
+
* Pass 4: Search for PRs authored by user (created/merged)
|
|
691
|
+
*/
|
|
692
|
+
getRecentActivity(repo: RepoInfo, since: Date, options?: {
|
|
693
|
+
mine?: boolean;
|
|
694
|
+
}): Promise<IssueActivity[]>;
|
|
695
|
+
/**
|
|
696
|
+
* Search for PRs the user reviewed that aren't already in the activity list.
|
|
697
|
+
*/
|
|
698
|
+
private fetchReviewedPRs;
|
|
699
|
+
/**
|
|
700
|
+
* Search for PRs the user authored that aren't already in the activity list.
|
|
701
|
+
* Captures PR creation and merges.
|
|
702
|
+
*/
|
|
703
|
+
private fetchAuthoredPRs;
|
|
704
|
+
/**
|
|
705
|
+
* Fetch and normalize timeline events for a single issue/PR
|
|
706
|
+
*/
|
|
707
|
+
private fetchTimelineEvents;
|
|
661
708
|
}
|
|
662
709
|
|
|
663
710
|
/**
|
|
@@ -1110,7 +1157,7 @@ declare const REPOSITORY_ID_QUERY = "\n query($owner: String!, $name: String!
|
|
|
1110
1157
|
/**
|
|
1111
1158
|
* Query to get project items with all field values (paginated)
|
|
1112
1159
|
*/
|
|
1113
|
-
declare const PROJECT_ITEMS_QUERY = "\n query($projectId: ID!, $cursor: String) {\n node(id: $projectId) {\n ... on ProjectV2 {\n items(first: 100, after: $cursor) {\n pageInfo {\n hasNextPage\n endCursor\n }\n nodes {\n id\n fieldValues(first: 20) {\n nodes {\n __typename\n ... on ProjectV2ItemFieldSingleSelectValue {\n name\n field { ... on ProjectV2SingleSelectField { name } }\n }\n ... on ProjectV2ItemFieldTextValue {\n text\n field { ... on ProjectV2Field { name } }\n }\n ... on ProjectV2ItemFieldNumberValue {\n number\n field { ... on ProjectV2Field { name } }\n }\n ... on ProjectV2ItemFieldDateValue {\n date\n field { ... on ProjectV2Field { name } }\n }\n ... on ProjectV2ItemFieldIterationValue {\n title\n field { ... on ProjectV2IterationField { name } }\n }\n }\n }\n content {\n __typename\n ... on Issue {\n title\n number\n url\n state\n issueType { name }\n assignees(first: 5) { nodes { login } }\n labels(first: 10) { nodes { name color } }\n repository { name owner { login } }\n parent { id number title state }\n subIssues(first: 50) { nodes { id number title state } }\n blockedBy(first: 20) { nodes { id number title state } }\n blocking(first: 20) { nodes { id number title state } }\n }\n ... on PullRequest {\n title\n number\n url\n state\n merged\n assignees(first: 5) { nodes { login } }\n labels(first: 10) { nodes { name color } }\n repository { name owner { login } }\n }\n ... on DraftIssue {\n title\n }\n }\n }\n }\n }\n }\n }\n";
|
|
1160
|
+
declare const PROJECT_ITEMS_QUERY = "\n query($projectId: ID!, $cursor: String) {\n node(id: $projectId) {\n ... on ProjectV2 {\n items(first: 100, after: $cursor) {\n pageInfo {\n hasNextPage\n endCursor\n }\n nodes {\n id\n fieldValues(first: 20) {\n nodes {\n __typename\n ... on ProjectV2ItemFieldSingleSelectValue {\n name\n field { ... on ProjectV2SingleSelectField { name } }\n }\n ... on ProjectV2ItemFieldTextValue {\n text\n field { ... on ProjectV2Field { name } }\n }\n ... on ProjectV2ItemFieldNumberValue {\n number\n field { ... on ProjectV2Field { name } }\n }\n ... on ProjectV2ItemFieldDateValue {\n date\n field { ... on ProjectV2Field { name } }\n }\n ... on ProjectV2ItemFieldIterationValue {\n title\n field { ... on ProjectV2IterationField { name } }\n }\n }\n }\n content {\n __typename\n ... on Issue {\n title\n number\n url\n state\n updatedAt\n issueType { name }\n assignees(first: 5) { nodes { login } }\n labels(first: 10) { nodes { name color } }\n repository { name owner { login } }\n parent { id number title state }\n subIssues(first: 50) { nodes { id number title state } }\n blockedBy(first: 20) { nodes { id number title state } }\n blocking(first: 20) { nodes { id number title state } }\n }\n ... on PullRequest {\n title\n number\n url\n state\n updatedAt\n merged\n assignees(first: 5) { nodes { login } }\n labels(first: 10) { nodes { name color } }\n repository { name owner { login } }\n }\n ... on DraftIssue {\n title\n }\n }\n }\n }\n }\n }\n }\n";
|
|
1114
1161
|
/**
|
|
1115
1162
|
* Query to get project fields (including status options)
|
|
1116
1163
|
*/
|
|
@@ -1215,6 +1262,19 @@ declare const REMOVE_BLOCKED_BY_MUTATION = "\n mutation($issueId: ID!, $block
|
|
|
1215
1262
|
* Query to get issue with its project items (direct lookup, no pagination needed)
|
|
1216
1263
|
*/
|
|
1217
1264
|
declare const ISSUE_WITH_PROJECT_ITEMS_QUERY = "\n query($owner: String!, $name: String!, $number: Int!) {\n repository(owner: $owner, name: $name) {\n issue(number: $number) {\n id\n title\n number\n url\n state\n issueType { name }\n assignees(first: 5) { nodes { login } }\n labels(first: 10) { nodes { name color } }\n parent { id number title state }\n subIssues(first: 50) { nodes { id number title state } }\n blockedBy(first: 20) { nodes { id number title state } }\n blocking(first: 20) { nodes { id number title state } }\n projectItems(first: 10) {\n nodes {\n id\n project { id title number }\n fieldValues(first: 20) {\n nodes {\n __typename\n ... on ProjectV2ItemFieldSingleSelectValue {\n name\n field { ... on ProjectV2SingleSelectField { name } }\n }\n ... on ProjectV2ItemFieldTextValue {\n text\n field { ... on ProjectV2Field { name } }\n }\n ... on ProjectV2ItemFieldNumberValue {\n number\n field { ... on ProjectV2Field { name } }\n }\n ... on ProjectV2ItemFieldDateValue {\n date\n field { ... on ProjectV2Field { name } }\n }\n ... on ProjectV2ItemFieldIterationValue {\n title\n field { ... on ProjectV2IterationField { name } }\n }\n }\n }\n }\n }\n }\n }\n }\n";
|
|
1265
|
+
/**
|
|
1266
|
+
* Query to get timeline events for an issue since a given time.
|
|
1267
|
+
* Used by the standup command to fetch specific activity details.
|
|
1268
|
+
*/
|
|
1269
|
+
declare const ISSUE_TIMELINE_QUERY = "\n query($owner: String!, $name: String!, $number: Int!, $since: DateTime!) {\n repository(owner: $owner, name: $name) {\n issueOrPullRequest(number: $number) {\n ... on Issue {\n timelineItems(first: 100, since: $since) {\n nodes {\n __typename\n ... on IssueComment {\n author { login }\n createdAt\n body\n }\n ... on LabeledEvent {\n actor { login }\n createdAt\n label { name }\n }\n ... on UnlabeledEvent {\n actor { login }\n createdAt\n label { name }\n }\n ... on AssignedEvent {\n actor { login }\n createdAt\n assignee { ... on User { login } }\n }\n ... on UnassignedEvent {\n actor { login }\n createdAt\n assignee { ... on User { login } }\n }\n ... on ClosedEvent {\n actor { login }\n createdAt\n }\n ... on ReopenedEvent {\n actor { login }\n createdAt\n }\n ... on CrossReferencedEvent {\n actor { login }\n createdAt\n source {\n __typename\n ... on PullRequest { number title url }\n ... on Issue { number title }\n }\n }\n }\n }\n }\n ... on PullRequest {\n timelineItems(first: 100, since: $since) {\n nodes {\n __typename\n ... on IssueComment {\n author { login }\n createdAt\n body\n }\n ... on LabeledEvent {\n actor { login }\n createdAt\n label { name }\n }\n ... on UnlabeledEvent {\n actor { login }\n createdAt\n label { name }\n }\n ... on AssignedEvent {\n actor { login }\n createdAt\n assignee { ... on User { login } }\n }\n ... on UnassignedEvent {\n actor { login }\n createdAt\n assignee { ... on User { login } }\n }\n ... on ClosedEvent {\n actor { login }\n createdAt\n }\n ... on ReopenedEvent {\n actor { login }\n createdAt\n }\n ... on CrossReferencedEvent {\n actor { login }\n createdAt\n source {\n __typename\n ... on PullRequest { number title url }\n ... on Issue { number title }\n }\n }\n ... on PullRequestReview {\n author { login }\n createdAt\n state\n }\n ... on ReviewRequestedEvent {\n actor { login }\n createdAt\n requestedReviewer {\n ... on User { login }\n }\n }\n }\n }\n }\n }\n }\n }\n";
|
|
1270
|
+
/**
|
|
1271
|
+
* Search for PRs reviewed by a user in a given repo since a date.
|
|
1272
|
+
*/
|
|
1273
|
+
declare const PR_REVIEWS_SEARCH_QUERY = "\n query($searchQuery: String!) {\n search(query: $searchQuery, type: ISSUE, first: 50) {\n nodes {\n ... on PullRequest {\n number\n title\n url\n author { login }\n reviews(first: 20) {\n nodes {\n author { login }\n state\n submittedAt\n }\n }\n }\n }\n }\n }\n";
|
|
1274
|
+
/**
|
|
1275
|
+
* Search for PRs authored by a user in a given repo since a date.
|
|
1276
|
+
*/
|
|
1277
|
+
declare const PR_AUTHORED_SEARCH_QUERY = "\n query($searchQuery: String!) {\n search(query: $searchQuery, type: ISSUE, first: 50) {\n nodes {\n ... on PullRequest {\n number\n title\n url\n state\n createdAt\n mergedAt\n mergedBy { login }\n }\n }\n }\n }\n";
|
|
1218
1278
|
/**
|
|
1219
1279
|
* Query to get issue relationships (parent and sub-issues)
|
|
1220
1280
|
*/
|
|
@@ -1233,12 +1293,15 @@ declare const queries_ISSUE_DETAILS_QUERY: typeof ISSUE_DETAILS_QUERY;
|
|
|
1233
1293
|
declare const queries_ISSUE_FOR_UPDATE_QUERY: typeof ISSUE_FOR_UPDATE_QUERY;
|
|
1234
1294
|
declare const queries_ISSUE_NODE_ID_QUERY: typeof ISSUE_NODE_ID_QUERY;
|
|
1235
1295
|
declare const queries_ISSUE_RELATIONSHIPS_QUERY: typeof ISSUE_RELATIONSHIPS_QUERY;
|
|
1296
|
+
declare const queries_ISSUE_TIMELINE_QUERY: typeof ISSUE_TIMELINE_QUERY;
|
|
1236
1297
|
declare const queries_ISSUE_TYPES_QUERY: typeof ISSUE_TYPES_QUERY;
|
|
1237
1298
|
declare const queries_ISSUE_WITH_PROJECT_ITEMS_QUERY: typeof ISSUE_WITH_PROJECT_ITEMS_QUERY;
|
|
1238
1299
|
declare const queries_LABEL_EXISTS_QUERY: typeof LABEL_EXISTS_QUERY;
|
|
1239
1300
|
declare const queries_PROJECT_FIELDS_QUERY: typeof PROJECT_FIELDS_QUERY;
|
|
1240
1301
|
declare const queries_PROJECT_ITEMS_QUERY: typeof PROJECT_ITEMS_QUERY;
|
|
1241
1302
|
declare const queries_PROJECT_VIEWS_QUERY: typeof PROJECT_VIEWS_QUERY;
|
|
1303
|
+
declare const queries_PR_AUTHORED_SEARCH_QUERY: typeof PR_AUTHORED_SEARCH_QUERY;
|
|
1304
|
+
declare const queries_PR_REVIEWS_SEARCH_QUERY: typeof PR_REVIEWS_SEARCH_QUERY;
|
|
1242
1305
|
declare const queries_RECENT_ISSUES_QUERY: typeof RECENT_ISSUES_QUERY;
|
|
1243
1306
|
declare const queries_REMOVE_BLOCKED_BY_MUTATION: typeof REMOVE_BLOCKED_BY_MUTATION;
|
|
1244
1307
|
declare const queries_REMOVE_LABELS_MUTATION: typeof REMOVE_LABELS_MUTATION;
|
|
@@ -1252,7 +1315,7 @@ declare const queries_UPDATE_ITEM_FIELD_MUTATION: typeof UPDATE_ITEM_FIELD_MUTAT
|
|
|
1252
1315
|
declare const queries_UPDATE_ITEM_STATUS_MUTATION: typeof UPDATE_ITEM_STATUS_MUTATION;
|
|
1253
1316
|
declare const queries_VIEWER_QUERY: typeof VIEWER_QUERY;
|
|
1254
1317
|
declare namespace queries {
|
|
1255
|
-
export { queries_ADD_BLOCKED_BY_MUTATION as ADD_BLOCKED_BY_MUTATION, queries_ADD_COMMENT_MUTATION as ADD_COMMENT_MUTATION, queries_ADD_LABELS_MUTATION as ADD_LABELS_MUTATION, queries_ADD_SUB_ISSUE_MUTATION as ADD_SUB_ISSUE_MUTATION, queries_ADD_TO_PROJECT_MUTATION as ADD_TO_PROJECT_MUTATION, queries_COLLABORATORS_QUERY as COLLABORATORS_QUERY, queries_CREATE_ISSUE_MUTATION as CREATE_ISSUE_MUTATION, queries_ISSUES_WITH_LABEL_QUERY as ISSUES_WITH_LABEL_QUERY, queries_ISSUE_AND_LABEL_QUERY as ISSUE_AND_LABEL_QUERY, queries_ISSUE_DETAILS_QUERY as ISSUE_DETAILS_QUERY, queries_ISSUE_FOR_UPDATE_QUERY as ISSUE_FOR_UPDATE_QUERY, queries_ISSUE_NODE_ID_QUERY as ISSUE_NODE_ID_QUERY, queries_ISSUE_RELATIONSHIPS_QUERY as ISSUE_RELATIONSHIPS_QUERY, queries_ISSUE_TYPES_QUERY as ISSUE_TYPES_QUERY, queries_ISSUE_WITH_PROJECT_ITEMS_QUERY as ISSUE_WITH_PROJECT_ITEMS_QUERY, queries_LABEL_EXISTS_QUERY as LABEL_EXISTS_QUERY, queries_PROJECT_FIELDS_QUERY as PROJECT_FIELDS_QUERY, queries_PROJECT_ITEMS_QUERY as PROJECT_ITEMS_QUERY, queries_PROJECT_VIEWS_QUERY as PROJECT_VIEWS_QUERY, queries_RECENT_ISSUES_QUERY as RECENT_ISSUES_QUERY, queries_REMOVE_BLOCKED_BY_MUTATION as REMOVE_BLOCKED_BY_MUTATION, queries_REMOVE_LABELS_MUTATION as REMOVE_LABELS_MUTATION, queries_REMOVE_SUB_ISSUE_MUTATION as REMOVE_SUB_ISSUE_MUTATION, queries_REPOSITORY_ID_QUERY as REPOSITORY_ID_QUERY, queries_REPOSITORY_PROJECTS_QUERY as REPOSITORY_PROJECTS_QUERY, queries_UPDATE_ISSUE_BODY_MUTATION as UPDATE_ISSUE_BODY_MUTATION, queries_UPDATE_ISSUE_MUTATION as UPDATE_ISSUE_MUTATION, queries_UPDATE_ISSUE_TYPE_MUTATION as UPDATE_ISSUE_TYPE_MUTATION, queries_UPDATE_ITEM_FIELD_MUTATION as UPDATE_ITEM_FIELD_MUTATION, queries_UPDATE_ITEM_STATUS_MUTATION as UPDATE_ITEM_STATUS_MUTATION, queries_VIEWER_QUERY as VIEWER_QUERY };
|
|
1318
|
+
export { queries_ADD_BLOCKED_BY_MUTATION as ADD_BLOCKED_BY_MUTATION, queries_ADD_COMMENT_MUTATION as ADD_COMMENT_MUTATION, queries_ADD_LABELS_MUTATION as ADD_LABELS_MUTATION, queries_ADD_SUB_ISSUE_MUTATION as ADD_SUB_ISSUE_MUTATION, queries_ADD_TO_PROJECT_MUTATION as ADD_TO_PROJECT_MUTATION, queries_COLLABORATORS_QUERY as COLLABORATORS_QUERY, queries_CREATE_ISSUE_MUTATION as CREATE_ISSUE_MUTATION, queries_ISSUES_WITH_LABEL_QUERY as ISSUES_WITH_LABEL_QUERY, queries_ISSUE_AND_LABEL_QUERY as ISSUE_AND_LABEL_QUERY, queries_ISSUE_DETAILS_QUERY as ISSUE_DETAILS_QUERY, queries_ISSUE_FOR_UPDATE_QUERY as ISSUE_FOR_UPDATE_QUERY, queries_ISSUE_NODE_ID_QUERY as ISSUE_NODE_ID_QUERY, queries_ISSUE_RELATIONSHIPS_QUERY as ISSUE_RELATIONSHIPS_QUERY, queries_ISSUE_TIMELINE_QUERY as ISSUE_TIMELINE_QUERY, queries_ISSUE_TYPES_QUERY as ISSUE_TYPES_QUERY, queries_ISSUE_WITH_PROJECT_ITEMS_QUERY as ISSUE_WITH_PROJECT_ITEMS_QUERY, queries_LABEL_EXISTS_QUERY as LABEL_EXISTS_QUERY, queries_PROJECT_FIELDS_QUERY as PROJECT_FIELDS_QUERY, queries_PROJECT_ITEMS_QUERY as PROJECT_ITEMS_QUERY, queries_PROJECT_VIEWS_QUERY as PROJECT_VIEWS_QUERY, queries_PR_AUTHORED_SEARCH_QUERY as PR_AUTHORED_SEARCH_QUERY, queries_PR_REVIEWS_SEARCH_QUERY as PR_REVIEWS_SEARCH_QUERY, queries_RECENT_ISSUES_QUERY as RECENT_ISSUES_QUERY, queries_REMOVE_BLOCKED_BY_MUTATION as REMOVE_BLOCKED_BY_MUTATION, queries_REMOVE_LABELS_MUTATION as REMOVE_LABELS_MUTATION, queries_REMOVE_SUB_ISSUE_MUTATION as REMOVE_SUB_ISSUE_MUTATION, queries_REPOSITORY_ID_QUERY as REPOSITORY_ID_QUERY, queries_REPOSITORY_PROJECTS_QUERY as REPOSITORY_PROJECTS_QUERY, queries_UPDATE_ISSUE_BODY_MUTATION as UPDATE_ISSUE_BODY_MUTATION, queries_UPDATE_ISSUE_MUTATION as UPDATE_ISSUE_MUTATION, queries_UPDATE_ISSUE_TYPE_MUTATION as UPDATE_ISSUE_TYPE_MUTATION, queries_UPDATE_ITEM_FIELD_MUTATION as UPDATE_ITEM_FIELD_MUTATION, queries_UPDATE_ITEM_STATUS_MUTATION as UPDATE_ITEM_STATUS_MUTATION, queries_VIEWER_QUERY as VIEWER_QUERY };
|
|
1256
1319
|
}
|
|
1257
1320
|
|
|
1258
1321
|
/**
|
|
@@ -2207,6 +2270,33 @@ declare function validateSafeString(value: string, fieldName?: string, pattern?:
|
|
|
2207
2270
|
*/
|
|
2208
2271
|
declare function validateUrl(url: string): string;
|
|
2209
2272
|
|
|
2273
|
+
/**
|
|
2274
|
+
* Standup formatting utilities.
|
|
2275
|
+
*
|
|
2276
|
+
* Provides shared formatting for standup activity summaries,
|
|
2277
|
+
* used by CLI, VS Code extension, and MCP tool.
|
|
2278
|
+
*/
|
|
2279
|
+
|
|
2280
|
+
/**
|
|
2281
|
+
* Options for formatting standup output
|
|
2282
|
+
*/
|
|
2283
|
+
interface FormatStandupOptions {
|
|
2284
|
+
since: Date;
|
|
2285
|
+
colorize?: boolean;
|
|
2286
|
+
}
|
|
2287
|
+
/**
|
|
2288
|
+
* Format a standup summary as human-readable text.
|
|
2289
|
+
*
|
|
2290
|
+
* @param activities - Activity data from GitHubAPI.getRecentActivity()
|
|
2291
|
+
* @param options - Formatting options
|
|
2292
|
+
* @returns Formatted text string
|
|
2293
|
+
*/
|
|
2294
|
+
declare function formatStandupText(activities: IssueActivity[], options: FormatStandupOptions): string;
|
|
2295
|
+
/**
|
|
2296
|
+
* Parse a duration string like "24h", "8h", "2d" or an ISO date into a Date.
|
|
2297
|
+
*/
|
|
2298
|
+
declare function parseSince(input: string): Date;
|
|
2299
|
+
|
|
2210
2300
|
/**
|
|
2211
2301
|
* Dashboard Hooks - Registration and management for external content providers
|
|
2212
2302
|
*
|
|
@@ -3241,4 +3331,4 @@ declare function shouldAbort(results: HookResult[]): boolean;
|
|
|
3241
3331
|
*/
|
|
3242
3332
|
declare function hasHooksForEvent(event: EventType): boolean;
|
|
3243
3333
|
|
|
3244
|
-
export { type AgentInstance, type AgentRegistry, type AgentSessionStatus, type AgentStatus, type AgentSummary, type ApiKeyProvider, type AssigneeInfo, type AuthError, type BaseEventPayload, type BlockingIssue, type BlockingRelationships, type BranchDashboardData, BranchLinker, CLI_TO_VSCODE_MAP, ClaudeClient, type ClaudeClientOptions, type ClaudeResult, type ClaudeTool, type Collaborator, type Commit, type ConflictChoices, type ConflictResolution, type ContentBlock, type CreateIssueOptions, type CreateIssueResult, type CreatePROptions, type CreatePRResult, type CreateWorktreeOptions, type CreateWorktreeResult, DEFAULT_RETRY_CONFIG, DEFAULT_VALUES, type DashboardHook, type DashboardOptions, type DateFieldValue, type DiffStats, type EventHook, type EventHookSettings, type EventHooksConfig, type EventPayload, type EventType, type ExpandIssueOptions, type ExpandedIssue, type FieldInfo, type FieldValue, type FieldValueConnection, type FileChange, GHP_TOOLS, type GeneratePRDescriptionOptions, GitError, GitHubAPI, type GitHubAPIOptions, type GitOptions, type HookExecutionOptions, type HookExecutionResult, type HookExitCodes, type HookItem, type HookMode, type HookOutcome, type HookResponse, type HookResult, type HooksConfig, type IssueCreatedPayload, type IssueDetails, type IssueReference, type IssueRelationships, type IssueStartedPayload, type IterationFieldValue, type LabelInfo, type Message, type NumberFieldValue, type OnFailureBehavior, type PRInfo, type PermissionPrompt, type PlanEpicOptions, type PlanEpicResult, type PrCreatedPayload, type PrCreatingPayload, type PrMergedPayload, type PrePrPayload, type Project, type ProjectConfig, type ProjectConventions, type ProjectItem, type ProjectItemContent, type ProjectItemsQueryResponse, type ProjectV2, type ProjectV2Field, type ProjectV2Item, type ProjectV2View, type ProjectWithViews, type ProjectsQueryResponse, type RegisterAgentOptions, type RelatedIssue, type RemoveWorktreeOptions, type RemoveWorktreeResult, type RepoInfo, type ResolvedClaudeConfig, type ResolvedSettings, type RetryConfig, SETTING_DISPLAY_NAMES, SYNCABLE_KEYS, type SessionEvent, SessionWatcher, type SettingConflict, type SettingsDiff, type SettingsSource, type SingleSelectFieldValue, type StartIssueOptions, type StartIssueResult, type StatusField, type StreamCallbacks, type StreamErrorEvent, type StreamEvent, type StreamEventBase, type StreamMessageCompleteEvent, type StreamOptions, type StreamTextEvent, type StreamToolInputDeltaEvent, type StreamToolUseCompleteEvent, type StreamToolUseStartEvent, type SyncableSettingKey, type SyncableSettings, TOOL_NAMES, type TextFieldValue, type TokenProvider, type TokenUsage, type ToolContext, type ToolHandler, type ToolHandlers, type UpdateAgentOptions, VSCODE_TO_CLI_MAP, type IssueInfo as WorkflowIssueInfo, type WorkflowResult, type WorktreeInfo as WorkflowWorktreeInfo, type WorktreeCreatedPayload, type WorktreeInfo$1 as WorktreeInfo, type WorktreeRemovedPayload, addEventHook, addHook, branchExists, buildConventionsContext, buildIssueUrl, buildOrgProjectUrl, buildProjectUrl, buildPullRequestUrl, buildRepoUrl, calculateBackoffDelay, checkTmuxForPermission, checkoutBranch, index as claudePrompts, cleanupStaleAgents, computeSettingsDiff, createBranch, createIssueWorkflow, createPRWorkflow, createSessionWatcher, createWorktree, createWorktreeWorkflow, detectRepository, disableEventHook, disableHook, enableEventHook, enableHook, executeAllHooks, executeEventHook, executeHook, executeHooksForEvent, extractIssueNumberFromBranch, fetchOrigin, findSessionFile, formatAction, formatConflict, gatherDashboardData, generateBranchName, generateWorktreePath, getAgent, getAgentByIssue, getAgentSummaries, getAllBranches, getChangedFiles, getCommitHistory, getCommitsAhead, getCommitsBehind, getCurrentBranch$1 as getCurrentBranch, getCurrentBranch as getDashboardCurrentBranch, getDefaultBaseBranch, getDefaultBranch, getDiffStats, getDiffSummary, getEnabledEventHooks, getEnabledHooks, getEventHook, getEventHooks, getEventHooksConfigPath, getEventSettings, getFullDiff, getGitHubRepo, getHook, getHooks, getHooksByCategory, getHooksConfigPath, getHooksForEvent, getIssueReferenceText, getLocalBranches, getRegistryPath, getRemoteBranches, getRepositoryRoot, getTools, getValidEventTypes, getValidModes, getValidOnFailureBehaviors, getWorktreeForBranch, hasDifferences, hasHooksForEvent, hasUncommittedChanges, isGitRepository, isTransientError, listAgents, listWorktrees, loadEventHooksConfig, loadHooksConfig, loadProjectConventions, loadRegistry, normalizeVSCodeSettings, parseBranchLink, parseGitHubUrl, parseIssueUrl, parseRateLimitDelay, parseSessionLine, pullLatest, queries, registerAgent, removeBranchLinkFromBody, removeEventHook, removeHook, removeWorktree, removeWorktreeWorkflow, resolveConflicts, sanitizeForBranchName, saveEventHooksConfig, saveHooksConfig, saveRegistry, setBranchLinkInBody, shellEscape, shouldAbort, skip, startIssueWorkflow, substituteTemplateVariables, toVSCodeSettings, unregisterAgent, updateAgent, updateEventHook, updateHook, useCli, useCustom, useVSCode, validateNumericInput, validateSafeString, validateUrl, withRetry, worktreeExists, wrapWithRetry };
|
|
3334
|
+
export { type ActivityEvent, type AgentInstance, type AgentRegistry, type AgentSessionStatus, type AgentStatus, type AgentSummary, type ApiKeyProvider, type AssigneeInfo, type AuthError, type BaseEventPayload, type BlockingIssue, type BlockingRelationships, type BranchDashboardData, BranchLinker, CLI_TO_VSCODE_MAP, ClaudeClient, type ClaudeClientOptions, type ClaudeResult, type ClaudeTool, type Collaborator, type Commit, type ConflictChoices, type ConflictResolution, type ContentBlock, type CreateIssueOptions, type CreateIssueResult, type CreatePROptions, type CreatePRResult, type CreateWorktreeOptions, type CreateWorktreeResult, DEFAULT_RETRY_CONFIG, DEFAULT_VALUES, type DashboardHook, type DashboardOptions, type DateFieldValue, type DiffStats, type EventHook, type EventHookSettings, type EventHooksConfig, type EventPayload, type EventType, type ExpandIssueOptions, type ExpandedIssue, type FieldInfo, type FieldValue, type FieldValueConnection, type FileChange, type FormatStandupOptions, GHP_TOOLS, type GeneratePRDescriptionOptions, GitError, GitHubAPI, type GitHubAPIOptions, type GitOptions, type HookExecutionOptions, type HookExecutionResult, type HookExitCodes, type HookItem, type HookMode, type HookOutcome, type HookResponse, type HookResult, type HooksConfig, type IssueActivity, type IssueCreatedPayload, type IssueDetails, type IssueReference, type IssueRelationships, type IssueStartedPayload, type IterationFieldValue, type LabelInfo, type Message, type NumberFieldValue, type OnFailureBehavior, type PRInfo, type PermissionPrompt, type PlanEpicOptions, type PlanEpicResult, type PrCreatedPayload, type PrCreatingPayload, type PrMergedPayload, type PrePrPayload, type Project, type ProjectConfig, type ProjectConventions, type ProjectItem, type ProjectItemContent, type ProjectItemsQueryResponse, type ProjectV2, type ProjectV2Field, type ProjectV2Item, type ProjectV2View, type ProjectWithViews, type ProjectsQueryResponse, type RegisterAgentOptions, type RelatedIssue, type RemoveWorktreeOptions, type RemoveWorktreeResult, type RepoInfo, type ResolvedClaudeConfig, type ResolvedSettings, type RetryConfig, SETTING_DISPLAY_NAMES, SYNCABLE_KEYS, type SessionEvent, SessionWatcher, type SettingConflict, type SettingsDiff, type SettingsSource, type SingleSelectFieldValue, type StartIssueOptions, type StartIssueResult, type StatusField, type StreamCallbacks, type StreamErrorEvent, type StreamEvent, type StreamEventBase, type StreamMessageCompleteEvent, type StreamOptions, type StreamTextEvent, type StreamToolInputDeltaEvent, type StreamToolUseCompleteEvent, type StreamToolUseStartEvent, type SyncableSettingKey, type SyncableSettings, TOOL_NAMES, type TextFieldValue, type TokenProvider, type TokenUsage, type ToolContext, type ToolHandler, type ToolHandlers, type UpdateAgentOptions, VSCODE_TO_CLI_MAP, type IssueInfo as WorkflowIssueInfo, type WorkflowResult, type WorktreeInfo as WorkflowWorktreeInfo, type WorktreeCreatedPayload, type WorktreeInfo$1 as WorktreeInfo, type WorktreeRemovedPayload, addEventHook, addHook, branchExists, buildConventionsContext, buildIssueUrl, buildOrgProjectUrl, buildProjectUrl, buildPullRequestUrl, buildRepoUrl, calculateBackoffDelay, checkTmuxForPermission, checkoutBranch, index as claudePrompts, cleanupStaleAgents, computeSettingsDiff, createBranch, createIssueWorkflow, createPRWorkflow, createSessionWatcher, createWorktree, createWorktreeWorkflow, detectRepository, disableEventHook, disableHook, enableEventHook, enableHook, executeAllHooks, executeEventHook, executeHook, executeHooksForEvent, extractIssueNumberFromBranch, fetchOrigin, findSessionFile, formatAction, formatConflict, formatStandupText, gatherDashboardData, generateBranchName, generateWorktreePath, getAgent, getAgentByIssue, getAgentSummaries, getAllBranches, getChangedFiles, getCommitHistory, getCommitsAhead, getCommitsBehind, getCurrentBranch$1 as getCurrentBranch, getCurrentBranch as getDashboardCurrentBranch, getDefaultBaseBranch, getDefaultBranch, getDiffStats, getDiffSummary, getEnabledEventHooks, getEnabledHooks, getEventHook, getEventHooks, getEventHooksConfigPath, getEventSettings, getFullDiff, getGitHubRepo, getHook, getHooks, getHooksByCategory, getHooksConfigPath, getHooksForEvent, getIssueReferenceText, getLocalBranches, getRegistryPath, getRemoteBranches, getRepositoryRoot, getTools, getValidEventTypes, getValidModes, getValidOnFailureBehaviors, getWorktreeForBranch, hasDifferences, hasHooksForEvent, hasUncommittedChanges, isGitRepository, isTransientError, listAgents, listWorktrees, loadEventHooksConfig, loadHooksConfig, loadProjectConventions, loadRegistry, normalizeVSCodeSettings, parseBranchLink, parseGitHubUrl, parseIssueUrl, parseRateLimitDelay, parseSessionLine, parseSince, pullLatest, queries, registerAgent, removeBranchLinkFromBody, removeEventHook, removeHook, removeWorktree, removeWorktreeWorkflow, resolveConflicts, sanitizeForBranchName, saveEventHooksConfig, saveHooksConfig, saveRegistry, setBranchLinkInBody, shellEscape, shouldAbort, skip, startIssueWorkflow, substituteTemplateVariables, toVSCodeSettings, unregisterAgent, updateAgent, updateEventHook, updateHook, useCli, useCustom, useVSCode, validateNumericInput, validateSafeString, validateUrl, withRetry, worktreeExists, wrapWithRetry };
|
package/dist/index.d.ts
CHANGED
|
@@ -121,6 +121,7 @@ interface ProjectItem {
|
|
|
121
121
|
subIssues: RelatedIssue[];
|
|
122
122
|
blockedBy: BlockingIssue[];
|
|
123
123
|
blocking: BlockingIssue[];
|
|
124
|
+
updatedAt: string | null;
|
|
124
125
|
}
|
|
125
126
|
/**
|
|
126
127
|
* Status field information for a project
|
|
@@ -424,6 +425,28 @@ interface BlockingRelationships {
|
|
|
424
425
|
/** Issues that this issue is blocking (these are blocked by this issue) */
|
|
425
426
|
blocking: BlockingIssue[];
|
|
426
427
|
}
|
|
428
|
+
/**
|
|
429
|
+
* Activity summary for a single issue/PR
|
|
430
|
+
*/
|
|
431
|
+
interface IssueActivity {
|
|
432
|
+
issue: {
|
|
433
|
+
number: number;
|
|
434
|
+
title: string;
|
|
435
|
+
url: string;
|
|
436
|
+
};
|
|
437
|
+
status: string | null;
|
|
438
|
+
assignees: string[];
|
|
439
|
+
changes: ActivityEvent[];
|
|
440
|
+
}
|
|
441
|
+
/**
|
|
442
|
+
* A single activity event on an issue
|
|
443
|
+
*/
|
|
444
|
+
interface ActivityEvent {
|
|
445
|
+
type: 'comment' | 'assigned' | 'unassigned' | 'labeled' | 'unlabeled' | 'closed' | 'reopened' | 'referenced' | 'review_submitted' | 'review_requested' | 'pr_created' | 'pr_merged';
|
|
446
|
+
actor: string;
|
|
447
|
+
timestamp: string;
|
|
448
|
+
details?: string;
|
|
449
|
+
}
|
|
427
450
|
|
|
428
451
|
/**
|
|
429
452
|
* GitHub API client for Projects V2.
|
|
@@ -658,6 +681,30 @@ declare class GitHubAPI {
|
|
|
658
681
|
* Get issue relationships (parent, sub-issues, and blocking relationships)
|
|
659
682
|
*/
|
|
660
683
|
getIssueRelationships(repo: RepoInfo, issueNumber: number): Promise<IssueRelationships | null>;
|
|
684
|
+
/**
|
|
685
|
+
* Get recent activity across all project items since a given time.
|
|
686
|
+
* Multi-pass approach:
|
|
687
|
+
* Pass 1: Fetch all project items, filter by updatedAt client-side
|
|
688
|
+
* Pass 2: Fetch timeline events only for items that changed
|
|
689
|
+
* Pass 3: Search for PRs reviewed by user (not captured in project items)
|
|
690
|
+
* Pass 4: Search for PRs authored by user (created/merged)
|
|
691
|
+
*/
|
|
692
|
+
getRecentActivity(repo: RepoInfo, since: Date, options?: {
|
|
693
|
+
mine?: boolean;
|
|
694
|
+
}): Promise<IssueActivity[]>;
|
|
695
|
+
/**
|
|
696
|
+
* Search for PRs the user reviewed that aren't already in the activity list.
|
|
697
|
+
*/
|
|
698
|
+
private fetchReviewedPRs;
|
|
699
|
+
/**
|
|
700
|
+
* Search for PRs the user authored that aren't already in the activity list.
|
|
701
|
+
* Captures PR creation and merges.
|
|
702
|
+
*/
|
|
703
|
+
private fetchAuthoredPRs;
|
|
704
|
+
/**
|
|
705
|
+
* Fetch and normalize timeline events for a single issue/PR
|
|
706
|
+
*/
|
|
707
|
+
private fetchTimelineEvents;
|
|
661
708
|
}
|
|
662
709
|
|
|
663
710
|
/**
|
|
@@ -1110,7 +1157,7 @@ declare const REPOSITORY_ID_QUERY = "\n query($owner: String!, $name: String!
|
|
|
1110
1157
|
/**
|
|
1111
1158
|
* Query to get project items with all field values (paginated)
|
|
1112
1159
|
*/
|
|
1113
|
-
declare const PROJECT_ITEMS_QUERY = "\n query($projectId: ID!, $cursor: String) {\n node(id: $projectId) {\n ... on ProjectV2 {\n items(first: 100, after: $cursor) {\n pageInfo {\n hasNextPage\n endCursor\n }\n nodes {\n id\n fieldValues(first: 20) {\n nodes {\n __typename\n ... on ProjectV2ItemFieldSingleSelectValue {\n name\n field { ... on ProjectV2SingleSelectField { name } }\n }\n ... on ProjectV2ItemFieldTextValue {\n text\n field { ... on ProjectV2Field { name } }\n }\n ... on ProjectV2ItemFieldNumberValue {\n number\n field { ... on ProjectV2Field { name } }\n }\n ... on ProjectV2ItemFieldDateValue {\n date\n field { ... on ProjectV2Field { name } }\n }\n ... on ProjectV2ItemFieldIterationValue {\n title\n field { ... on ProjectV2IterationField { name } }\n }\n }\n }\n content {\n __typename\n ... on Issue {\n title\n number\n url\n state\n issueType { name }\n assignees(first: 5) { nodes { login } }\n labels(first: 10) { nodes { name color } }\n repository { name owner { login } }\n parent { id number title state }\n subIssues(first: 50) { nodes { id number title state } }\n blockedBy(first: 20) { nodes { id number title state } }\n blocking(first: 20) { nodes { id number title state } }\n }\n ... on PullRequest {\n title\n number\n url\n state\n merged\n assignees(first: 5) { nodes { login } }\n labels(first: 10) { nodes { name color } }\n repository { name owner { login } }\n }\n ... on DraftIssue {\n title\n }\n }\n }\n }\n }\n }\n }\n";
|
|
1160
|
+
declare const PROJECT_ITEMS_QUERY = "\n query($projectId: ID!, $cursor: String) {\n node(id: $projectId) {\n ... on ProjectV2 {\n items(first: 100, after: $cursor) {\n pageInfo {\n hasNextPage\n endCursor\n }\n nodes {\n id\n fieldValues(first: 20) {\n nodes {\n __typename\n ... on ProjectV2ItemFieldSingleSelectValue {\n name\n field { ... on ProjectV2SingleSelectField { name } }\n }\n ... on ProjectV2ItemFieldTextValue {\n text\n field { ... on ProjectV2Field { name } }\n }\n ... on ProjectV2ItemFieldNumberValue {\n number\n field { ... on ProjectV2Field { name } }\n }\n ... on ProjectV2ItemFieldDateValue {\n date\n field { ... on ProjectV2Field { name } }\n }\n ... on ProjectV2ItemFieldIterationValue {\n title\n field { ... on ProjectV2IterationField { name } }\n }\n }\n }\n content {\n __typename\n ... on Issue {\n title\n number\n url\n state\n updatedAt\n issueType { name }\n assignees(first: 5) { nodes { login } }\n labels(first: 10) { nodes { name color } }\n repository { name owner { login } }\n parent { id number title state }\n subIssues(first: 50) { nodes { id number title state } }\n blockedBy(first: 20) { nodes { id number title state } }\n blocking(first: 20) { nodes { id number title state } }\n }\n ... on PullRequest {\n title\n number\n url\n state\n updatedAt\n merged\n assignees(first: 5) { nodes { login } }\n labels(first: 10) { nodes { name color } }\n repository { name owner { login } }\n }\n ... on DraftIssue {\n title\n }\n }\n }\n }\n }\n }\n }\n";
|
|
1114
1161
|
/**
|
|
1115
1162
|
* Query to get project fields (including status options)
|
|
1116
1163
|
*/
|
|
@@ -1215,6 +1262,19 @@ declare const REMOVE_BLOCKED_BY_MUTATION = "\n mutation($issueId: ID!, $block
|
|
|
1215
1262
|
* Query to get issue with its project items (direct lookup, no pagination needed)
|
|
1216
1263
|
*/
|
|
1217
1264
|
declare const ISSUE_WITH_PROJECT_ITEMS_QUERY = "\n query($owner: String!, $name: String!, $number: Int!) {\n repository(owner: $owner, name: $name) {\n issue(number: $number) {\n id\n title\n number\n url\n state\n issueType { name }\n assignees(first: 5) { nodes { login } }\n labels(first: 10) { nodes { name color } }\n parent { id number title state }\n subIssues(first: 50) { nodes { id number title state } }\n blockedBy(first: 20) { nodes { id number title state } }\n blocking(first: 20) { nodes { id number title state } }\n projectItems(first: 10) {\n nodes {\n id\n project { id title number }\n fieldValues(first: 20) {\n nodes {\n __typename\n ... on ProjectV2ItemFieldSingleSelectValue {\n name\n field { ... on ProjectV2SingleSelectField { name } }\n }\n ... on ProjectV2ItemFieldTextValue {\n text\n field { ... on ProjectV2Field { name } }\n }\n ... on ProjectV2ItemFieldNumberValue {\n number\n field { ... on ProjectV2Field { name } }\n }\n ... on ProjectV2ItemFieldDateValue {\n date\n field { ... on ProjectV2Field { name } }\n }\n ... on ProjectV2ItemFieldIterationValue {\n title\n field { ... on ProjectV2IterationField { name } }\n }\n }\n }\n }\n }\n }\n }\n }\n";
|
|
1265
|
+
/**
|
|
1266
|
+
* Query to get timeline events for an issue since a given time.
|
|
1267
|
+
* Used by the standup command to fetch specific activity details.
|
|
1268
|
+
*/
|
|
1269
|
+
declare const ISSUE_TIMELINE_QUERY = "\n query($owner: String!, $name: String!, $number: Int!, $since: DateTime!) {\n repository(owner: $owner, name: $name) {\n issueOrPullRequest(number: $number) {\n ... on Issue {\n timelineItems(first: 100, since: $since) {\n nodes {\n __typename\n ... on IssueComment {\n author { login }\n createdAt\n body\n }\n ... on LabeledEvent {\n actor { login }\n createdAt\n label { name }\n }\n ... on UnlabeledEvent {\n actor { login }\n createdAt\n label { name }\n }\n ... on AssignedEvent {\n actor { login }\n createdAt\n assignee { ... on User { login } }\n }\n ... on UnassignedEvent {\n actor { login }\n createdAt\n assignee { ... on User { login } }\n }\n ... on ClosedEvent {\n actor { login }\n createdAt\n }\n ... on ReopenedEvent {\n actor { login }\n createdAt\n }\n ... on CrossReferencedEvent {\n actor { login }\n createdAt\n source {\n __typename\n ... on PullRequest { number title url }\n ... on Issue { number title }\n }\n }\n }\n }\n }\n ... on PullRequest {\n timelineItems(first: 100, since: $since) {\n nodes {\n __typename\n ... on IssueComment {\n author { login }\n createdAt\n body\n }\n ... on LabeledEvent {\n actor { login }\n createdAt\n label { name }\n }\n ... on UnlabeledEvent {\n actor { login }\n createdAt\n label { name }\n }\n ... on AssignedEvent {\n actor { login }\n createdAt\n assignee { ... on User { login } }\n }\n ... on UnassignedEvent {\n actor { login }\n createdAt\n assignee { ... on User { login } }\n }\n ... on ClosedEvent {\n actor { login }\n createdAt\n }\n ... on ReopenedEvent {\n actor { login }\n createdAt\n }\n ... on CrossReferencedEvent {\n actor { login }\n createdAt\n source {\n __typename\n ... on PullRequest { number title url }\n ... on Issue { number title }\n }\n }\n ... on PullRequestReview {\n author { login }\n createdAt\n state\n }\n ... on ReviewRequestedEvent {\n actor { login }\n createdAt\n requestedReviewer {\n ... on User { login }\n }\n }\n }\n }\n }\n }\n }\n }\n";
|
|
1270
|
+
/**
|
|
1271
|
+
* Search for PRs reviewed by a user in a given repo since a date.
|
|
1272
|
+
*/
|
|
1273
|
+
declare const PR_REVIEWS_SEARCH_QUERY = "\n query($searchQuery: String!) {\n search(query: $searchQuery, type: ISSUE, first: 50) {\n nodes {\n ... on PullRequest {\n number\n title\n url\n author { login }\n reviews(first: 20) {\n nodes {\n author { login }\n state\n submittedAt\n }\n }\n }\n }\n }\n }\n";
|
|
1274
|
+
/**
|
|
1275
|
+
* Search for PRs authored by a user in a given repo since a date.
|
|
1276
|
+
*/
|
|
1277
|
+
declare const PR_AUTHORED_SEARCH_QUERY = "\n query($searchQuery: String!) {\n search(query: $searchQuery, type: ISSUE, first: 50) {\n nodes {\n ... on PullRequest {\n number\n title\n url\n state\n createdAt\n mergedAt\n mergedBy { login }\n }\n }\n }\n }\n";
|
|
1218
1278
|
/**
|
|
1219
1279
|
* Query to get issue relationships (parent and sub-issues)
|
|
1220
1280
|
*/
|
|
@@ -1233,12 +1293,15 @@ declare const queries_ISSUE_DETAILS_QUERY: typeof ISSUE_DETAILS_QUERY;
|
|
|
1233
1293
|
declare const queries_ISSUE_FOR_UPDATE_QUERY: typeof ISSUE_FOR_UPDATE_QUERY;
|
|
1234
1294
|
declare const queries_ISSUE_NODE_ID_QUERY: typeof ISSUE_NODE_ID_QUERY;
|
|
1235
1295
|
declare const queries_ISSUE_RELATIONSHIPS_QUERY: typeof ISSUE_RELATIONSHIPS_QUERY;
|
|
1296
|
+
declare const queries_ISSUE_TIMELINE_QUERY: typeof ISSUE_TIMELINE_QUERY;
|
|
1236
1297
|
declare const queries_ISSUE_TYPES_QUERY: typeof ISSUE_TYPES_QUERY;
|
|
1237
1298
|
declare const queries_ISSUE_WITH_PROJECT_ITEMS_QUERY: typeof ISSUE_WITH_PROJECT_ITEMS_QUERY;
|
|
1238
1299
|
declare const queries_LABEL_EXISTS_QUERY: typeof LABEL_EXISTS_QUERY;
|
|
1239
1300
|
declare const queries_PROJECT_FIELDS_QUERY: typeof PROJECT_FIELDS_QUERY;
|
|
1240
1301
|
declare const queries_PROJECT_ITEMS_QUERY: typeof PROJECT_ITEMS_QUERY;
|
|
1241
1302
|
declare const queries_PROJECT_VIEWS_QUERY: typeof PROJECT_VIEWS_QUERY;
|
|
1303
|
+
declare const queries_PR_AUTHORED_SEARCH_QUERY: typeof PR_AUTHORED_SEARCH_QUERY;
|
|
1304
|
+
declare const queries_PR_REVIEWS_SEARCH_QUERY: typeof PR_REVIEWS_SEARCH_QUERY;
|
|
1242
1305
|
declare const queries_RECENT_ISSUES_QUERY: typeof RECENT_ISSUES_QUERY;
|
|
1243
1306
|
declare const queries_REMOVE_BLOCKED_BY_MUTATION: typeof REMOVE_BLOCKED_BY_MUTATION;
|
|
1244
1307
|
declare const queries_REMOVE_LABELS_MUTATION: typeof REMOVE_LABELS_MUTATION;
|
|
@@ -1252,7 +1315,7 @@ declare const queries_UPDATE_ITEM_FIELD_MUTATION: typeof UPDATE_ITEM_FIELD_MUTAT
|
|
|
1252
1315
|
declare const queries_UPDATE_ITEM_STATUS_MUTATION: typeof UPDATE_ITEM_STATUS_MUTATION;
|
|
1253
1316
|
declare const queries_VIEWER_QUERY: typeof VIEWER_QUERY;
|
|
1254
1317
|
declare namespace queries {
|
|
1255
|
-
export { queries_ADD_BLOCKED_BY_MUTATION as ADD_BLOCKED_BY_MUTATION, queries_ADD_COMMENT_MUTATION as ADD_COMMENT_MUTATION, queries_ADD_LABELS_MUTATION as ADD_LABELS_MUTATION, queries_ADD_SUB_ISSUE_MUTATION as ADD_SUB_ISSUE_MUTATION, queries_ADD_TO_PROJECT_MUTATION as ADD_TO_PROJECT_MUTATION, queries_COLLABORATORS_QUERY as COLLABORATORS_QUERY, queries_CREATE_ISSUE_MUTATION as CREATE_ISSUE_MUTATION, queries_ISSUES_WITH_LABEL_QUERY as ISSUES_WITH_LABEL_QUERY, queries_ISSUE_AND_LABEL_QUERY as ISSUE_AND_LABEL_QUERY, queries_ISSUE_DETAILS_QUERY as ISSUE_DETAILS_QUERY, queries_ISSUE_FOR_UPDATE_QUERY as ISSUE_FOR_UPDATE_QUERY, queries_ISSUE_NODE_ID_QUERY as ISSUE_NODE_ID_QUERY, queries_ISSUE_RELATIONSHIPS_QUERY as ISSUE_RELATIONSHIPS_QUERY, queries_ISSUE_TYPES_QUERY as ISSUE_TYPES_QUERY, queries_ISSUE_WITH_PROJECT_ITEMS_QUERY as ISSUE_WITH_PROJECT_ITEMS_QUERY, queries_LABEL_EXISTS_QUERY as LABEL_EXISTS_QUERY, queries_PROJECT_FIELDS_QUERY as PROJECT_FIELDS_QUERY, queries_PROJECT_ITEMS_QUERY as PROJECT_ITEMS_QUERY, queries_PROJECT_VIEWS_QUERY as PROJECT_VIEWS_QUERY, queries_RECENT_ISSUES_QUERY as RECENT_ISSUES_QUERY, queries_REMOVE_BLOCKED_BY_MUTATION as REMOVE_BLOCKED_BY_MUTATION, queries_REMOVE_LABELS_MUTATION as REMOVE_LABELS_MUTATION, queries_REMOVE_SUB_ISSUE_MUTATION as REMOVE_SUB_ISSUE_MUTATION, queries_REPOSITORY_ID_QUERY as REPOSITORY_ID_QUERY, queries_REPOSITORY_PROJECTS_QUERY as REPOSITORY_PROJECTS_QUERY, queries_UPDATE_ISSUE_BODY_MUTATION as UPDATE_ISSUE_BODY_MUTATION, queries_UPDATE_ISSUE_MUTATION as UPDATE_ISSUE_MUTATION, queries_UPDATE_ISSUE_TYPE_MUTATION as UPDATE_ISSUE_TYPE_MUTATION, queries_UPDATE_ITEM_FIELD_MUTATION as UPDATE_ITEM_FIELD_MUTATION, queries_UPDATE_ITEM_STATUS_MUTATION as UPDATE_ITEM_STATUS_MUTATION, queries_VIEWER_QUERY as VIEWER_QUERY };
|
|
1318
|
+
export { queries_ADD_BLOCKED_BY_MUTATION as ADD_BLOCKED_BY_MUTATION, queries_ADD_COMMENT_MUTATION as ADD_COMMENT_MUTATION, queries_ADD_LABELS_MUTATION as ADD_LABELS_MUTATION, queries_ADD_SUB_ISSUE_MUTATION as ADD_SUB_ISSUE_MUTATION, queries_ADD_TO_PROJECT_MUTATION as ADD_TO_PROJECT_MUTATION, queries_COLLABORATORS_QUERY as COLLABORATORS_QUERY, queries_CREATE_ISSUE_MUTATION as CREATE_ISSUE_MUTATION, queries_ISSUES_WITH_LABEL_QUERY as ISSUES_WITH_LABEL_QUERY, queries_ISSUE_AND_LABEL_QUERY as ISSUE_AND_LABEL_QUERY, queries_ISSUE_DETAILS_QUERY as ISSUE_DETAILS_QUERY, queries_ISSUE_FOR_UPDATE_QUERY as ISSUE_FOR_UPDATE_QUERY, queries_ISSUE_NODE_ID_QUERY as ISSUE_NODE_ID_QUERY, queries_ISSUE_RELATIONSHIPS_QUERY as ISSUE_RELATIONSHIPS_QUERY, queries_ISSUE_TIMELINE_QUERY as ISSUE_TIMELINE_QUERY, queries_ISSUE_TYPES_QUERY as ISSUE_TYPES_QUERY, queries_ISSUE_WITH_PROJECT_ITEMS_QUERY as ISSUE_WITH_PROJECT_ITEMS_QUERY, queries_LABEL_EXISTS_QUERY as LABEL_EXISTS_QUERY, queries_PROJECT_FIELDS_QUERY as PROJECT_FIELDS_QUERY, queries_PROJECT_ITEMS_QUERY as PROJECT_ITEMS_QUERY, queries_PROJECT_VIEWS_QUERY as PROJECT_VIEWS_QUERY, queries_PR_AUTHORED_SEARCH_QUERY as PR_AUTHORED_SEARCH_QUERY, queries_PR_REVIEWS_SEARCH_QUERY as PR_REVIEWS_SEARCH_QUERY, queries_RECENT_ISSUES_QUERY as RECENT_ISSUES_QUERY, queries_REMOVE_BLOCKED_BY_MUTATION as REMOVE_BLOCKED_BY_MUTATION, queries_REMOVE_LABELS_MUTATION as REMOVE_LABELS_MUTATION, queries_REMOVE_SUB_ISSUE_MUTATION as REMOVE_SUB_ISSUE_MUTATION, queries_REPOSITORY_ID_QUERY as REPOSITORY_ID_QUERY, queries_REPOSITORY_PROJECTS_QUERY as REPOSITORY_PROJECTS_QUERY, queries_UPDATE_ISSUE_BODY_MUTATION as UPDATE_ISSUE_BODY_MUTATION, queries_UPDATE_ISSUE_MUTATION as UPDATE_ISSUE_MUTATION, queries_UPDATE_ISSUE_TYPE_MUTATION as UPDATE_ISSUE_TYPE_MUTATION, queries_UPDATE_ITEM_FIELD_MUTATION as UPDATE_ITEM_FIELD_MUTATION, queries_UPDATE_ITEM_STATUS_MUTATION as UPDATE_ITEM_STATUS_MUTATION, queries_VIEWER_QUERY as VIEWER_QUERY };
|
|
1256
1319
|
}
|
|
1257
1320
|
|
|
1258
1321
|
/**
|
|
@@ -2207,6 +2270,33 @@ declare function validateSafeString(value: string, fieldName?: string, pattern?:
|
|
|
2207
2270
|
*/
|
|
2208
2271
|
declare function validateUrl(url: string): string;
|
|
2209
2272
|
|
|
2273
|
+
/**
|
|
2274
|
+
* Standup formatting utilities.
|
|
2275
|
+
*
|
|
2276
|
+
* Provides shared formatting for standup activity summaries,
|
|
2277
|
+
* used by CLI, VS Code extension, and MCP tool.
|
|
2278
|
+
*/
|
|
2279
|
+
|
|
2280
|
+
/**
|
|
2281
|
+
* Options for formatting standup output
|
|
2282
|
+
*/
|
|
2283
|
+
interface FormatStandupOptions {
|
|
2284
|
+
since: Date;
|
|
2285
|
+
colorize?: boolean;
|
|
2286
|
+
}
|
|
2287
|
+
/**
|
|
2288
|
+
* Format a standup summary as human-readable text.
|
|
2289
|
+
*
|
|
2290
|
+
* @param activities - Activity data from GitHubAPI.getRecentActivity()
|
|
2291
|
+
* @param options - Formatting options
|
|
2292
|
+
* @returns Formatted text string
|
|
2293
|
+
*/
|
|
2294
|
+
declare function formatStandupText(activities: IssueActivity[], options: FormatStandupOptions): string;
|
|
2295
|
+
/**
|
|
2296
|
+
* Parse a duration string like "24h", "8h", "2d" or an ISO date into a Date.
|
|
2297
|
+
*/
|
|
2298
|
+
declare function parseSince(input: string): Date;
|
|
2299
|
+
|
|
2210
2300
|
/**
|
|
2211
2301
|
* Dashboard Hooks - Registration and management for external content providers
|
|
2212
2302
|
*
|
|
@@ -3241,4 +3331,4 @@ declare function shouldAbort(results: HookResult[]): boolean;
|
|
|
3241
3331
|
*/
|
|
3242
3332
|
declare function hasHooksForEvent(event: EventType): boolean;
|
|
3243
3333
|
|
|
3244
|
-
export { type AgentInstance, type AgentRegistry, type AgentSessionStatus, type AgentStatus, type AgentSummary, type ApiKeyProvider, type AssigneeInfo, type AuthError, type BaseEventPayload, type BlockingIssue, type BlockingRelationships, type BranchDashboardData, BranchLinker, CLI_TO_VSCODE_MAP, ClaudeClient, type ClaudeClientOptions, type ClaudeResult, type ClaudeTool, type Collaborator, type Commit, type ConflictChoices, type ConflictResolution, type ContentBlock, type CreateIssueOptions, type CreateIssueResult, type CreatePROptions, type CreatePRResult, type CreateWorktreeOptions, type CreateWorktreeResult, DEFAULT_RETRY_CONFIG, DEFAULT_VALUES, type DashboardHook, type DashboardOptions, type DateFieldValue, type DiffStats, type EventHook, type EventHookSettings, type EventHooksConfig, type EventPayload, type EventType, type ExpandIssueOptions, type ExpandedIssue, type FieldInfo, type FieldValue, type FieldValueConnection, type FileChange, GHP_TOOLS, type GeneratePRDescriptionOptions, GitError, GitHubAPI, type GitHubAPIOptions, type GitOptions, type HookExecutionOptions, type HookExecutionResult, type HookExitCodes, type HookItem, type HookMode, type HookOutcome, type HookResponse, type HookResult, type HooksConfig, type IssueCreatedPayload, type IssueDetails, type IssueReference, type IssueRelationships, type IssueStartedPayload, type IterationFieldValue, type LabelInfo, type Message, type NumberFieldValue, type OnFailureBehavior, type PRInfo, type PermissionPrompt, type PlanEpicOptions, type PlanEpicResult, type PrCreatedPayload, type PrCreatingPayload, type PrMergedPayload, type PrePrPayload, type Project, type ProjectConfig, type ProjectConventions, type ProjectItem, type ProjectItemContent, type ProjectItemsQueryResponse, type ProjectV2, type ProjectV2Field, type ProjectV2Item, type ProjectV2View, type ProjectWithViews, type ProjectsQueryResponse, type RegisterAgentOptions, type RelatedIssue, type RemoveWorktreeOptions, type RemoveWorktreeResult, type RepoInfo, type ResolvedClaudeConfig, type ResolvedSettings, type RetryConfig, SETTING_DISPLAY_NAMES, SYNCABLE_KEYS, type SessionEvent, SessionWatcher, type SettingConflict, type SettingsDiff, type SettingsSource, type SingleSelectFieldValue, type StartIssueOptions, type StartIssueResult, type StatusField, type StreamCallbacks, type StreamErrorEvent, type StreamEvent, type StreamEventBase, type StreamMessageCompleteEvent, type StreamOptions, type StreamTextEvent, type StreamToolInputDeltaEvent, type StreamToolUseCompleteEvent, type StreamToolUseStartEvent, type SyncableSettingKey, type SyncableSettings, TOOL_NAMES, type TextFieldValue, type TokenProvider, type TokenUsage, type ToolContext, type ToolHandler, type ToolHandlers, type UpdateAgentOptions, VSCODE_TO_CLI_MAP, type IssueInfo as WorkflowIssueInfo, type WorkflowResult, type WorktreeInfo as WorkflowWorktreeInfo, type WorktreeCreatedPayload, type WorktreeInfo$1 as WorktreeInfo, type WorktreeRemovedPayload, addEventHook, addHook, branchExists, buildConventionsContext, buildIssueUrl, buildOrgProjectUrl, buildProjectUrl, buildPullRequestUrl, buildRepoUrl, calculateBackoffDelay, checkTmuxForPermission, checkoutBranch, index as claudePrompts, cleanupStaleAgents, computeSettingsDiff, createBranch, createIssueWorkflow, createPRWorkflow, createSessionWatcher, createWorktree, createWorktreeWorkflow, detectRepository, disableEventHook, disableHook, enableEventHook, enableHook, executeAllHooks, executeEventHook, executeHook, executeHooksForEvent, extractIssueNumberFromBranch, fetchOrigin, findSessionFile, formatAction, formatConflict, gatherDashboardData, generateBranchName, generateWorktreePath, getAgent, getAgentByIssue, getAgentSummaries, getAllBranches, getChangedFiles, getCommitHistory, getCommitsAhead, getCommitsBehind, getCurrentBranch$1 as getCurrentBranch, getCurrentBranch as getDashboardCurrentBranch, getDefaultBaseBranch, getDefaultBranch, getDiffStats, getDiffSummary, getEnabledEventHooks, getEnabledHooks, getEventHook, getEventHooks, getEventHooksConfigPath, getEventSettings, getFullDiff, getGitHubRepo, getHook, getHooks, getHooksByCategory, getHooksConfigPath, getHooksForEvent, getIssueReferenceText, getLocalBranches, getRegistryPath, getRemoteBranches, getRepositoryRoot, getTools, getValidEventTypes, getValidModes, getValidOnFailureBehaviors, getWorktreeForBranch, hasDifferences, hasHooksForEvent, hasUncommittedChanges, isGitRepository, isTransientError, listAgents, listWorktrees, loadEventHooksConfig, loadHooksConfig, loadProjectConventions, loadRegistry, normalizeVSCodeSettings, parseBranchLink, parseGitHubUrl, parseIssueUrl, parseRateLimitDelay, parseSessionLine, pullLatest, queries, registerAgent, removeBranchLinkFromBody, removeEventHook, removeHook, removeWorktree, removeWorktreeWorkflow, resolveConflicts, sanitizeForBranchName, saveEventHooksConfig, saveHooksConfig, saveRegistry, setBranchLinkInBody, shellEscape, shouldAbort, skip, startIssueWorkflow, substituteTemplateVariables, toVSCodeSettings, unregisterAgent, updateAgent, updateEventHook, updateHook, useCli, useCustom, useVSCode, validateNumericInput, validateSafeString, validateUrl, withRetry, worktreeExists, wrapWithRetry };
|
|
3334
|
+
export { type ActivityEvent, type AgentInstance, type AgentRegistry, type AgentSessionStatus, type AgentStatus, type AgentSummary, type ApiKeyProvider, type AssigneeInfo, type AuthError, type BaseEventPayload, type BlockingIssue, type BlockingRelationships, type BranchDashboardData, BranchLinker, CLI_TO_VSCODE_MAP, ClaudeClient, type ClaudeClientOptions, type ClaudeResult, type ClaudeTool, type Collaborator, type Commit, type ConflictChoices, type ConflictResolution, type ContentBlock, type CreateIssueOptions, type CreateIssueResult, type CreatePROptions, type CreatePRResult, type CreateWorktreeOptions, type CreateWorktreeResult, DEFAULT_RETRY_CONFIG, DEFAULT_VALUES, type DashboardHook, type DashboardOptions, type DateFieldValue, type DiffStats, type EventHook, type EventHookSettings, type EventHooksConfig, type EventPayload, type EventType, type ExpandIssueOptions, type ExpandedIssue, type FieldInfo, type FieldValue, type FieldValueConnection, type FileChange, type FormatStandupOptions, GHP_TOOLS, type GeneratePRDescriptionOptions, GitError, GitHubAPI, type GitHubAPIOptions, type GitOptions, type HookExecutionOptions, type HookExecutionResult, type HookExitCodes, type HookItem, type HookMode, type HookOutcome, type HookResponse, type HookResult, type HooksConfig, type IssueActivity, type IssueCreatedPayload, type IssueDetails, type IssueReference, type IssueRelationships, type IssueStartedPayload, type IterationFieldValue, type LabelInfo, type Message, type NumberFieldValue, type OnFailureBehavior, type PRInfo, type PermissionPrompt, type PlanEpicOptions, type PlanEpicResult, type PrCreatedPayload, type PrCreatingPayload, type PrMergedPayload, type PrePrPayload, type Project, type ProjectConfig, type ProjectConventions, type ProjectItem, type ProjectItemContent, type ProjectItemsQueryResponse, type ProjectV2, type ProjectV2Field, type ProjectV2Item, type ProjectV2View, type ProjectWithViews, type ProjectsQueryResponse, type RegisterAgentOptions, type RelatedIssue, type RemoveWorktreeOptions, type RemoveWorktreeResult, type RepoInfo, type ResolvedClaudeConfig, type ResolvedSettings, type RetryConfig, SETTING_DISPLAY_NAMES, SYNCABLE_KEYS, type SessionEvent, SessionWatcher, type SettingConflict, type SettingsDiff, type SettingsSource, type SingleSelectFieldValue, type StartIssueOptions, type StartIssueResult, type StatusField, type StreamCallbacks, type StreamErrorEvent, type StreamEvent, type StreamEventBase, type StreamMessageCompleteEvent, type StreamOptions, type StreamTextEvent, type StreamToolInputDeltaEvent, type StreamToolUseCompleteEvent, type StreamToolUseStartEvent, type SyncableSettingKey, type SyncableSettings, TOOL_NAMES, type TextFieldValue, type TokenProvider, type TokenUsage, type ToolContext, type ToolHandler, type ToolHandlers, type UpdateAgentOptions, VSCODE_TO_CLI_MAP, type IssueInfo as WorkflowIssueInfo, type WorkflowResult, type WorktreeInfo as WorkflowWorktreeInfo, type WorktreeCreatedPayload, type WorktreeInfo$1 as WorktreeInfo, type WorktreeRemovedPayload, addEventHook, addHook, branchExists, buildConventionsContext, buildIssueUrl, buildOrgProjectUrl, buildProjectUrl, buildPullRequestUrl, buildRepoUrl, calculateBackoffDelay, checkTmuxForPermission, checkoutBranch, index as claudePrompts, cleanupStaleAgents, computeSettingsDiff, createBranch, createIssueWorkflow, createPRWorkflow, createSessionWatcher, createWorktree, createWorktreeWorkflow, detectRepository, disableEventHook, disableHook, enableEventHook, enableHook, executeAllHooks, executeEventHook, executeHook, executeHooksForEvent, extractIssueNumberFromBranch, fetchOrigin, findSessionFile, formatAction, formatConflict, formatStandupText, gatherDashboardData, generateBranchName, generateWorktreePath, getAgent, getAgentByIssue, getAgentSummaries, getAllBranches, getChangedFiles, getCommitHistory, getCommitsAhead, getCommitsBehind, getCurrentBranch$1 as getCurrentBranch, getCurrentBranch as getDashboardCurrentBranch, getDefaultBaseBranch, getDefaultBranch, getDiffStats, getDiffSummary, getEnabledEventHooks, getEnabledHooks, getEventHook, getEventHooks, getEventHooksConfigPath, getEventSettings, getFullDiff, getGitHubRepo, getHook, getHooks, getHooksByCategory, getHooksConfigPath, getHooksForEvent, getIssueReferenceText, getLocalBranches, getRegistryPath, getRemoteBranches, getRepositoryRoot, getTools, getValidEventTypes, getValidModes, getValidOnFailureBehaviors, getWorktreeForBranch, hasDifferences, hasHooksForEvent, hasUncommittedChanges, isGitRepository, isTransientError, listAgents, listWorktrees, loadEventHooksConfig, loadHooksConfig, loadProjectConventions, loadRegistry, normalizeVSCodeSettings, parseBranchLink, parseGitHubUrl, parseIssueUrl, parseRateLimitDelay, parseSessionLine, parseSince, pullLatest, queries, registerAgent, removeBranchLinkFromBody, removeEventHook, removeHook, removeWorktree, removeWorktreeWorkflow, resolveConflicts, sanitizeForBranchName, saveEventHooksConfig, saveHooksConfig, saveRegistry, setBranchLinkInBody, shellEscape, shouldAbort, skip, startIssueWorkflow, substituteTemplateVariables, toVSCodeSettings, unregisterAgent, updateAgent, updateEventHook, updateHook, useCli, useCustom, useVSCode, validateNumericInput, validateSafeString, validateUrl, withRetry, worktreeExists, wrapWithRetry };
|