@tonycasey/lisa 2.2.0 → 2.11.5
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/lib/application/handlers/PromptSubmitHandler.d.ts +22 -12
- package/dist/lib/application/handlers/PromptSubmitHandler.d.ts.map +1 -1
- package/dist/lib/application/handlers/PromptSubmitHandler.js +36 -13
- package/dist/lib/application/handlers/PromptSubmitHandler.js.map +1 -1
- package/dist/lib/application/handlers/SessionStartHandler.d.ts +58 -5
- package/dist/lib/application/handlers/SessionStartHandler.d.ts.map +1 -1
- package/dist/lib/application/handlers/SessionStartHandler.js +259 -44
- package/dist/lib/application/handlers/SessionStartHandler.js.map +1 -1
- package/dist/lib/application/handlers/SessionStopHandler.d.ts +29 -5
- package/dist/lib/application/handlers/SessionStopHandler.d.ts.map +1 -1
- package/dist/lib/application/handlers/SessionStopHandler.js +83 -11
- package/dist/lib/application/handlers/SessionStopHandler.js.map +1 -1
- package/dist/lib/application/handlers/index.d.ts +1 -0
- package/dist/lib/application/handlers/index.d.ts.map +1 -1
- package/dist/lib/application/handlers/index.js +13 -1
- package/dist/lib/application/handlers/index.js.map +1 -1
- package/dist/lib/application/handlers/pr/PrAddressHandler.d.ts +103 -0
- package/dist/lib/application/handlers/pr/PrAddressHandler.d.ts.map +1 -0
- package/dist/lib/application/handlers/pr/PrAddressHandler.js +354 -0
- package/dist/lib/application/handlers/pr/PrAddressHandler.js.map +1 -0
- package/dist/lib/application/handlers/pr/PrChecksHandler.d.ts +64 -0
- package/dist/lib/application/handlers/pr/PrChecksHandler.d.ts.map +1 -0
- package/dist/lib/application/handlers/pr/PrChecksHandler.js +154 -0
- package/dist/lib/application/handlers/pr/PrChecksHandler.js.map +1 -0
- package/dist/lib/application/handlers/pr/PrCommentsHandler.d.ts +81 -0
- package/dist/lib/application/handlers/pr/PrCommentsHandler.d.ts.map +1 -0
- package/dist/lib/application/handlers/pr/PrCommentsHandler.js +184 -0
- package/dist/lib/application/handlers/pr/PrCommentsHandler.js.map +1 -0
- package/dist/lib/application/handlers/pr/PrCreateHandler.d.ts +78 -0
- package/dist/lib/application/handlers/pr/PrCreateHandler.d.ts.map +1 -0
- package/dist/lib/application/handlers/pr/PrCreateHandler.js +230 -0
- package/dist/lib/application/handlers/pr/PrCreateHandler.js.map +1 -0
- package/dist/lib/application/handlers/pr/PrLinkHandler.d.ts +75 -0
- package/dist/lib/application/handlers/pr/PrLinkHandler.d.ts.map +1 -0
- package/dist/lib/application/handlers/pr/PrLinkHandler.js +151 -0
- package/dist/lib/application/handlers/pr/PrLinkHandler.js.map +1 -0
- package/dist/lib/application/handlers/pr/PrPollHandler.d.ts +161 -0
- package/dist/lib/application/handlers/pr/PrPollHandler.d.ts.map +1 -0
- package/dist/lib/application/handlers/pr/PrPollHandler.js +674 -0
- package/dist/lib/application/handlers/pr/PrPollHandler.js.map +1 -0
- package/dist/lib/application/handlers/pr/PrRememberHandler.d.ts +55 -0
- package/dist/lib/application/handlers/pr/PrRememberHandler.d.ts.map +1 -0
- package/dist/lib/application/handlers/pr/PrRememberHandler.js +75 -0
- package/dist/lib/application/handlers/pr/PrRememberHandler.js.map +1 -0
- package/dist/lib/application/handlers/pr/PrReviewHandler.d.ts +103 -0
- package/dist/lib/application/handlers/pr/PrReviewHandler.d.ts.map +1 -0
- package/dist/lib/application/handlers/pr/PrReviewHandler.js +334 -0
- package/dist/lib/application/handlers/pr/PrReviewHandler.js.map +1 -0
- package/dist/lib/application/handlers/pr/PrStatusHandler.d.ts +150 -0
- package/dist/lib/application/handlers/pr/PrStatusHandler.d.ts.map +1 -0
- package/dist/lib/application/handlers/pr/PrStatusHandler.js +389 -0
- package/dist/lib/application/handlers/pr/PrStatusHandler.js.map +1 -0
- package/dist/lib/application/handlers/pr/PrWatchHandler.d.ts +77 -0
- package/dist/lib/application/handlers/pr/PrWatchHandler.d.ts.map +1 -0
- package/dist/lib/application/handlers/pr/PrWatchHandler.js +174 -0
- package/dist/lib/application/handlers/pr/PrWatchHandler.js.map +1 -0
- package/dist/lib/application/handlers/pr/index.d.ts +25 -0
- package/dist/lib/application/handlers/pr/index.d.ts.map +1 -0
- package/dist/lib/application/handlers/pr/index.js +38 -0
- package/dist/lib/application/handlers/pr/index.js.map +1 -0
- package/dist/lib/application/interfaces/index.d.ts +1 -0
- package/dist/lib/application/interfaces/index.d.ts.map +1 -1
- package/dist/lib/application/mediator/IMediator.d.ts +73 -0
- package/dist/lib/application/mediator/IMediator.d.ts.map +1 -0
- package/dist/lib/application/mediator/IMediator.js +12 -0
- package/dist/lib/application/mediator/IMediator.js.map +1 -0
- package/dist/lib/application/mediator/Mediator.d.ts +29 -0
- package/dist/lib/application/mediator/Mediator.d.ts.map +1 -0
- package/dist/lib/application/mediator/Mediator.js +53 -0
- package/dist/lib/application/mediator/Mediator.js.map +1 -0
- package/dist/lib/application/mediator/index.d.ts +10 -0
- package/dist/lib/application/mediator/index.d.ts.map +1 -0
- package/dist/lib/application/mediator/index.js +18 -0
- package/dist/lib/application/mediator/index.js.map +1 -0
- package/dist/lib/application/mediator/requests/PromptSubmitRequest.d.ts +60 -0
- package/dist/lib/application/mediator/requests/PromptSubmitRequest.d.ts.map +1 -0
- package/dist/lib/application/mediator/requests/PromptSubmitRequest.js +35 -0
- package/dist/lib/application/mediator/requests/PromptSubmitRequest.js.map +1 -0
- package/dist/lib/application/mediator/requests/SessionStartRequest.d.ts +36 -0
- package/dist/lib/application/mediator/requests/SessionStartRequest.d.ts.map +1 -0
- package/dist/lib/application/mediator/requests/SessionStartRequest.js +32 -0
- package/dist/lib/application/mediator/requests/SessionStartRequest.js.map +1 -0
- package/dist/lib/application/mediator/requests/SessionStopRequest.d.ts +67 -0
- package/dist/lib/application/mediator/requests/SessionStopRequest.d.ts.map +1 -0
- package/dist/lib/application/mediator/requests/SessionStopRequest.js +35 -0
- package/dist/lib/application/mediator/requests/SessionStopRequest.js.map +1 -0
- package/dist/lib/application/mediator/requests/index.d.ts +9 -0
- package/dist/lib/application/mediator/requests/index.d.ts.map +1 -0
- package/dist/lib/application/mediator/requests/index.js +13 -0
- package/dist/lib/application/mediator/requests/index.js.map +1 -0
- package/dist/lib/cli.d.ts +2 -44
- package/dist/lib/cli.d.ts.map +1 -1
- package/dist/lib/cli.js +1380 -597
- package/dist/lib/cli.js.map +1 -1
- package/dist/lib/commands/docker.d.ts +20 -0
- package/dist/lib/commands/docker.d.ts.map +1 -0
- package/dist/lib/commands/docker.js +27 -0
- package/dist/lib/commands/docker.js.map +1 -0
- package/dist/lib/commands/doctor.d.ts +94 -0
- package/dist/lib/commands/doctor.d.ts.map +1 -0
- package/dist/lib/commands/doctor.js +716 -0
- package/dist/lib/commands/doctor.js.map +1 -0
- package/dist/lib/commands/index.d.ts +10 -0
- package/dist/lib/commands/index.d.ts.map +1 -0
- package/dist/lib/commands/index.js +31 -0
- package/dist/lib/commands/index.js.map +1 -0
- package/dist/lib/commands/init.d.ts +37 -0
- package/dist/lib/commands/init.d.ts.map +1 -0
- package/dist/lib/commands/init.js +589 -0
- package/dist/lib/commands/init.js.map +1 -0
- package/dist/lib/commands/shared/constants.d.ts +27 -0
- package/dist/lib/commands/shared/constants.d.ts.map +1 -0
- package/dist/lib/commands/shared/constants.js +46 -0
- package/dist/lib/commands/shared/constants.js.map +1 -0
- package/dist/lib/commands/shared/index.d.ts +5 -0
- package/dist/lib/commands/shared/index.d.ts.map +1 -0
- package/dist/lib/commands/shared/index.js +15 -0
- package/dist/lib/commands/shared/index.js.map +1 -0
- package/dist/lib/domain/index.d.ts +4 -2
- package/dist/lib/domain/index.d.ts.map +1 -1
- package/dist/lib/domain/index.js +5 -2
- package/dist/lib/domain/index.js.map +1 -1
- package/dist/lib/domain/interfaces/ICronService.d.ts +100 -0
- package/dist/lib/domain/interfaces/ICronService.d.ts.map +1 -0
- package/dist/lib/domain/interfaces/ICronService.js +9 -0
- package/dist/lib/domain/interfaces/ICronService.js.map +1 -0
- package/dist/lib/domain/interfaces/ILabelInference.d.ts +62 -0
- package/dist/lib/domain/interfaces/ILabelInference.d.ts.map +1 -0
- package/dist/lib/domain/interfaces/ILabelInference.js +11 -0
- package/dist/lib/domain/interfaces/ILabelInference.js.map +1 -0
- package/dist/lib/domain/interfaces/ILisaServices.d.ts +6 -0
- package/dist/lib/domain/interfaces/ILisaServices.d.ts.map +1 -1
- package/dist/lib/domain/interfaces/IMcpClient.d.ts +15 -2
- package/dist/lib/domain/interfaces/IMcpClient.d.ts.map +1 -1
- package/dist/lib/domain/interfaces/IMemoryService.d.ts +11 -1
- package/dist/lib/domain/interfaces/IMemoryService.d.ts.map +1 -1
- package/dist/lib/domain/interfaces/INotificationService.d.ts +81 -0
- package/dist/lib/domain/interfaces/INotificationService.d.ts.map +1 -0
- package/dist/lib/domain/interfaces/INotificationService.js +9 -0
- package/dist/lib/domain/interfaces/INotificationService.js.map +1 -0
- package/dist/lib/domain/interfaces/ISessionCaptureService.d.ts +2 -1
- package/dist/lib/domain/interfaces/ISessionCaptureService.d.ts.map +1 -1
- package/dist/lib/domain/interfaces/IStructuredLog.d.ts +162 -0
- package/dist/lib/domain/interfaces/IStructuredLog.d.ts.map +1 -0
- package/dist/lib/domain/interfaces/IStructuredLog.js +85 -0
- package/dist/lib/domain/interfaces/IStructuredLog.js.map +1 -0
- package/dist/lib/domain/interfaces/dal/IGithubClient.d.ts +42 -0
- package/dist/lib/domain/interfaces/dal/IGithubClient.d.ts.map +1 -0
- package/dist/lib/domain/interfaces/dal/IGithubClient.js +12 -0
- package/dist/lib/domain/interfaces/dal/IGithubClient.js.map +1 -0
- package/dist/lib/domain/interfaces/dal/IPullRequestRepository.d.ts +124 -0
- package/dist/lib/domain/interfaces/dal/IPullRequestRepository.d.ts.map +1 -0
- package/dist/lib/domain/interfaces/dal/IPullRequestRepository.js +13 -0
- package/dist/lib/domain/interfaces/dal/IPullRequestRepository.js.map +1 -0
- package/dist/lib/domain/interfaces/dal/index.d.ts +2 -0
- package/dist/lib/domain/interfaces/dal/index.d.ts.map +1 -1
- package/dist/lib/domain/interfaces/dal/index.js.map +1 -1
- package/dist/lib/domain/interfaces/index.d.ts +5 -1
- package/dist/lib/domain/interfaces/index.d.ts.map +1 -1
- package/dist/lib/domain/interfaces/index.js +6 -0
- package/dist/lib/domain/interfaces/index.js.map +1 -1
- package/dist/lib/domain/interfaces/types/IPullRequest.d.ts +120 -0
- package/dist/lib/domain/interfaces/types/IPullRequest.d.ts.map +1 -0
- package/dist/lib/domain/interfaces/types/IPullRequest.js +42 -0
- package/dist/lib/domain/interfaces/types/IPullRequest.js.map +1 -0
- package/dist/lib/domain/interfaces/types/ITask.d.ts +16 -0
- package/dist/lib/domain/interfaces/types/ITask.d.ts.map +1 -1
- package/dist/lib/domain/interfaces/types/ITask.js.map +1 -1
- package/dist/lib/domain/interfaces/types/index.d.ts +1 -0
- package/dist/lib/domain/interfaces/types/index.d.ts.map +1 -1
- package/dist/lib/domain/interfaces/types/index.js +4 -1
- package/dist/lib/domain/interfaces/types/index.js.map +1 -1
- package/dist/lib/domain/utils/cancellation.d.ts +111 -0
- package/dist/lib/domain/utils/cancellation.d.ts.map +1 -0
- package/dist/lib/domain/utils/cancellation.js +168 -0
- package/dist/lib/domain/utils/cancellation.js.map +1 -0
- package/dist/lib/domain/utils/index.d.ts +8 -0
- package/dist/lib/domain/utils/index.d.ts.map +1 -0
- package/dist/lib/domain/utils/index.js +16 -0
- package/dist/lib/domain/utils/index.js.map +1 -0
- package/dist/lib/infrastructure/adapters/claude/session-start.d.ts +1 -1
- package/dist/lib/infrastructure/adapters/claude/session-start.js +9 -11
- package/dist/lib/infrastructure/adapters/claude/session-start.js.map +1 -1
- package/dist/lib/infrastructure/adapters/claude/session-stop.d.ts +1 -5
- package/dist/lib/infrastructure/adapters/claude/session-stop.d.ts.map +1 -1
- package/dist/lib/infrastructure/adapters/claude/session-stop.js +12 -15
- package/dist/lib/infrastructure/adapters/claude/session-stop.js.map +1 -1
- package/dist/lib/infrastructure/adapters/claude/user-prompt-submit.d.ts +1 -1
- package/dist/lib/infrastructure/adapters/claude/user-prompt-submit.js +9 -11
- package/dist/lib/infrastructure/adapters/claude/user-prompt-submit.js.map +1 -1
- package/dist/lib/infrastructure/adapters/opencode/plugin.d.ts +2 -2
- package/dist/lib/infrastructure/adapters/opencode/plugin.d.ts.map +1 -1
- package/dist/lib/infrastructure/adapters/opencode/plugin.js +16 -21
- package/dist/lib/infrastructure/adapters/opencode/plugin.js.map +1 -1
- package/dist/lib/infrastructure/cli/index.d.ts +8 -0
- package/dist/lib/infrastructure/cli/index.d.ts.map +1 -0
- package/dist/lib/infrastructure/cli/index.js +15 -0
- package/dist/lib/infrastructure/cli/index.js.map +1 -0
- package/dist/lib/infrastructure/cli/io.d.ts +91 -0
- package/dist/lib/infrastructure/cli/io.d.ts.map +1 -0
- package/dist/lib/infrastructure/cli/io.js +128 -0
- package/dist/lib/infrastructure/cli/io.js.map +1 -0
- package/dist/lib/infrastructure/cron/CronService.d.ts +87 -0
- package/dist/lib/infrastructure/cron/CronService.d.ts.map +1 -0
- package/dist/lib/infrastructure/cron/CronService.js +571 -0
- package/dist/lib/infrastructure/cron/CronService.js.map +1 -0
- package/dist/lib/infrastructure/cron/index.d.ts +5 -0
- package/dist/lib/infrastructure/cron/index.d.ts.map +1 -0
- package/dist/lib/infrastructure/cron/index.js +10 -0
- package/dist/lib/infrastructure/cron/index.js.map +1 -0
- package/dist/lib/infrastructure/dal/connections/McpConnectionManager.js +1 -1
- package/dist/lib/infrastructure/dal/connections/McpConnectionManager.js.map +1 -1
- package/dist/lib/infrastructure/dal/index.d.ts +1 -1
- package/dist/lib/infrastructure/dal/index.d.ts.map +1 -1
- package/dist/lib/infrastructure/dal/index.js +2 -1
- package/dist/lib/infrastructure/dal/index.js.map +1 -1
- package/dist/lib/infrastructure/dal/repositories/index.d.ts +1 -1
- package/dist/lib/infrastructure/dal/repositories/index.d.ts.map +1 -1
- package/dist/lib/infrastructure/dal/repositories/index.js +3 -2
- package/dist/lib/infrastructure/dal/repositories/index.js.map +1 -1
- package/dist/lib/infrastructure/dal/repositories/mcp/McpTaskRepository.d.ts.map +1 -1
- package/dist/lib/infrastructure/dal/repositories/mcp/McpTaskRepository.js +6 -2
- package/dist/lib/infrastructure/dal/repositories/mcp/McpTaskRepository.js.map +1 -1
- package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jPullRequestRepository.d.ts +54 -0
- package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jPullRequestRepository.d.ts.map +1 -0
- package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jPullRequestRepository.js +561 -0
- package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jPullRequestRepository.js.map +1 -0
- package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jTaskRepository.d.ts +5 -2
- package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jTaskRepository.d.ts.map +1 -1
- package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jTaskRepository.js +78 -45
- package/dist/lib/infrastructure/dal/repositories/neo4j/Neo4jTaskRepository.js.map +1 -1
- package/dist/lib/infrastructure/dal/repositories/neo4j/index.d.ts +1 -0
- package/dist/lib/infrastructure/dal/repositories/neo4j/index.d.ts.map +1 -1
- package/dist/lib/infrastructure/dal/repositories/neo4j/index.js +3 -1
- package/dist/lib/infrastructure/dal/repositories/neo4j/index.js.map +1 -1
- package/dist/lib/infrastructure/dal/repositories/zep/ZepTaskRepository.d.ts.map +1 -1
- package/dist/lib/infrastructure/dal/repositories/zep/ZepTaskRepository.js +6 -2
- package/dist/lib/infrastructure/dal/repositories/zep/ZepTaskRepository.js.map +1 -1
- package/dist/lib/infrastructure/di/Container.d.ts +72 -0
- package/dist/lib/infrastructure/di/Container.d.ts.map +1 -0
- package/dist/lib/infrastructure/di/Container.js +182 -0
- package/dist/lib/infrastructure/di/Container.js.map +1 -0
- package/dist/lib/infrastructure/di/IContainer.d.ts +87 -0
- package/dist/lib/infrastructure/di/IContainer.d.ts.map +1 -0
- package/dist/lib/infrastructure/di/IContainer.js +11 -0
- package/dist/lib/infrastructure/di/IContainer.js.map +1 -0
- package/dist/lib/infrastructure/di/ServiceFactory.d.ts +6 -0
- package/dist/lib/infrastructure/di/ServiceFactory.d.ts.map +1 -1
- package/dist/lib/infrastructure/di/ServiceFactory.js +66 -0
- package/dist/lib/infrastructure/di/ServiceFactory.js.map +1 -1
- package/dist/lib/infrastructure/di/bootstrap.d.ts +43 -0
- package/dist/lib/infrastructure/di/bootstrap.d.ts.map +1 -0
- package/dist/lib/infrastructure/di/bootstrap.js +272 -0
- package/dist/lib/infrastructure/di/bootstrap.js.map +1 -0
- package/dist/lib/infrastructure/di/index.d.ts +6 -0
- package/dist/lib/infrastructure/di/index.d.ts.map +1 -1
- package/dist/lib/infrastructure/di/index.js +15 -1
- package/dist/lib/infrastructure/di/index.js.map +1 -1
- package/dist/lib/infrastructure/di/tokens.d.ts +70 -0
- package/dist/lib/infrastructure/di/tokens.d.ts.map +1 -0
- package/dist/lib/infrastructure/di/tokens.js +58 -0
- package/dist/lib/infrastructure/di/tokens.js.map +1 -0
- package/dist/lib/infrastructure/github/GithubClient.d.ts +129 -0
- package/dist/lib/infrastructure/github/GithubClient.d.ts.map +1 -0
- package/dist/lib/infrastructure/github/GithubClient.js +549 -0
- package/dist/lib/infrastructure/github/GithubClient.js.map +1 -0
- package/dist/lib/infrastructure/github/index.d.ts +8 -0
- package/dist/lib/infrastructure/github/index.d.ts.map +1 -0
- package/dist/lib/infrastructure/github/index.js +13 -0
- package/dist/lib/infrastructure/github/index.js.map +1 -0
- package/dist/lib/infrastructure/github/types.d.ts +145 -0
- package/dist/lib/infrastructure/github/types.d.ts.map +1 -0
- package/dist/lib/infrastructure/github/types.js +25 -0
- package/dist/lib/infrastructure/github/types.js.map +1 -0
- package/dist/lib/infrastructure/index.d.ts +4 -0
- package/dist/lib/infrastructure/index.d.ts.map +1 -1
- package/dist/lib/infrastructure/index.js +8 -0
- package/dist/lib/infrastructure/index.js.map +1 -1
- package/dist/lib/infrastructure/logging/Logger.d.ts +51 -4
- package/dist/lib/infrastructure/logging/Logger.d.ts.map +1 -1
- package/dist/lib/infrastructure/logging/Logger.js +127 -2
- package/dist/lib/infrastructure/logging/Logger.js.map +1 -1
- package/dist/lib/infrastructure/mcp/McpClient.d.ts +36 -1
- package/dist/lib/infrastructure/mcp/McpClient.d.ts.map +1 -1
- package/dist/lib/infrastructure/mcp/McpClient.js +68 -2
- package/dist/lib/infrastructure/mcp/McpClient.js.map +1 -1
- package/dist/lib/infrastructure/notifications/NotificationService.d.ts +90 -0
- package/dist/lib/infrastructure/notifications/NotificationService.d.ts.map +1 -0
- package/dist/lib/infrastructure/notifications/NotificationService.js +445 -0
- package/dist/lib/infrastructure/notifications/NotificationService.js.map +1 -0
- package/dist/lib/infrastructure/notifications/index.d.ts +7 -0
- package/dist/lib/infrastructure/notifications/index.d.ts.map +1 -0
- package/dist/lib/infrastructure/notifications/index.js +12 -0
- package/dist/lib/infrastructure/notifications/index.js.map +1 -0
- package/dist/lib/infrastructure/services/LabelInferenceService.d.ts +33 -0
- package/dist/lib/infrastructure/services/LabelInferenceService.d.ts.map +1 -0
- package/dist/lib/infrastructure/services/LabelInferenceService.js +225 -0
- package/dist/lib/infrastructure/services/LabelInferenceService.js.map +1 -0
- package/dist/lib/infrastructure/services/MemoryService.d.ts +23 -2
- package/dist/lib/infrastructure/services/MemoryService.d.ts.map +1 -1
- package/dist/lib/infrastructure/services/MemoryService.js +150 -55
- package/dist/lib/infrastructure/services/MemoryService.js.map +1 -1
- package/dist/lib/infrastructure/services/SessionCaptureService.d.ts +74 -20
- package/dist/lib/infrastructure/services/SessionCaptureService.d.ts.map +1 -1
- package/dist/lib/infrastructure/services/SessionCaptureService.js +331 -22
- package/dist/lib/infrastructure/services/SessionCaptureService.js.map +1 -1
- package/dist/lib/infrastructure/services/index.d.ts +1 -0
- package/dist/lib/infrastructure/services/index.d.ts.map +1 -1
- package/dist/lib/infrastructure/services/index.js +4 -1
- package/dist/lib/infrastructure/services/index.js.map +1 -1
- package/dist/lib/infrastructure/utils/index.d.ts +10 -0
- package/dist/lib/infrastructure/utils/index.d.ts.map +1 -0
- package/dist/lib/infrastructure/utils/index.js +26 -0
- package/dist/lib/infrastructure/utils/index.js.map +1 -0
- package/dist/lib/skills/common/type-mappings.d.ts.map +1 -1
- package/dist/lib/skills/common/type-mappings.js +6 -0
- package/dist/lib/skills/common/type-mappings.js.map +1 -1
- package/dist/lib/skills/github/github.d.ts +27 -0
- package/dist/lib/skills/github/github.d.ts.map +1 -0
- package/dist/lib/skills/github/github.js +408 -0
- package/dist/lib/skills/github/github.js.map +1 -0
- package/dist/lib/skills/memory/memory.js +3 -1
- package/dist/lib/skills/memory/memory.js.map +1 -1
- package/dist/lib/skills/shared/clients/GhCliClient.d.ts +17 -0
- package/dist/lib/skills/shared/clients/GhCliClient.d.ts.map +1 -0
- package/dist/lib/skills/shared/clients/GhCliClient.js +244 -0
- package/dist/lib/skills/shared/clients/GhCliClient.js.map +1 -0
- package/dist/lib/skills/shared/clients/McpClient.d.ts +12 -0
- package/dist/lib/skills/shared/clients/McpClient.d.ts.map +1 -1
- package/dist/lib/skills/shared/clients/McpClient.js +121 -76
- package/dist/lib/skills/shared/clients/McpClient.js.map +1 -1
- package/dist/lib/skills/shared/clients/Neo4jClient.d.ts.map +1 -1
- package/dist/lib/skills/shared/clients/Neo4jClient.js +12 -1
- package/dist/lib/skills/shared/clients/Neo4jClient.js.map +1 -1
- package/dist/lib/skills/shared/clients/index.d.ts +1 -0
- package/dist/lib/skills/shared/clients/index.d.ts.map +1 -1
- package/dist/lib/skills/shared/clients/index.js +4 -1
- package/dist/lib/skills/shared/clients/index.js.map +1 -1
- package/dist/lib/skills/shared/clients/interfaces/IGhCliClient.d.ts +56 -0
- package/dist/lib/skills/shared/clients/interfaces/IGhCliClient.d.ts.map +1 -0
- package/dist/lib/skills/shared/clients/interfaces/IGhCliClient.js +7 -0
- package/dist/lib/skills/shared/clients/interfaces/IGhCliClient.js.map +1 -0
- package/dist/lib/skills/shared/clients/interfaces/IZepClient.d.ts +7 -1
- package/dist/lib/skills/shared/clients/interfaces/IZepClient.d.ts.map +1 -1
- package/dist/lib/skills/shared/clients/interfaces/index.d.ts +1 -0
- package/dist/lib/skills/shared/clients/interfaces/index.d.ts.map +1 -1
- package/dist/lib/skills/shared/clients/interfaces/index.js +1 -0
- package/dist/lib/skills/shared/clients/interfaces/index.js.map +1 -1
- package/dist/lib/skills/shared/services/GitHubService.d.ts +169 -0
- package/dist/lib/skills/shared/services/GitHubService.d.ts.map +1 -0
- package/dist/lib/skills/shared/services/GitHubService.js +493 -0
- package/dist/lib/skills/shared/services/GitHubService.js.map +1 -0
- package/dist/lib/skills/shared/services/GitHubSyncService.d.ts +124 -0
- package/dist/lib/skills/shared/services/GitHubSyncService.d.ts.map +1 -0
- package/dist/lib/skills/shared/services/GitHubSyncService.js +412 -0
- package/dist/lib/skills/shared/services/GitHubSyncService.js.map +1 -0
- package/dist/lib/skills/shared/services/MemoryCliService.d.ts +2 -0
- package/dist/lib/skills/shared/services/MemoryCliService.d.ts.map +1 -1
- package/dist/lib/skills/shared/services/MemoryCliService.js +19 -2
- package/dist/lib/skills/shared/services/MemoryCliService.js.map +1 -1
- package/dist/lib/skills/shared/services/MemoryService.d.ts.map +1 -1
- package/dist/lib/skills/shared/services/MemoryService.js +26 -7
- package/dist/lib/skills/shared/services/MemoryService.js.map +1 -1
- package/dist/lib/skills/shared/services/TaskCliService.d.ts +6 -2
- package/dist/lib/skills/shared/services/TaskCliService.d.ts.map +1 -1
- package/dist/lib/skills/shared/services/TaskCliService.js +108 -7
- package/dist/lib/skills/shared/services/TaskCliService.js.map +1 -1
- package/dist/lib/skills/shared/services/TaskService.d.ts.map +1 -1
- package/dist/lib/skills/shared/services/TaskService.js +272 -42
- package/dist/lib/skills/shared/services/TaskService.js.map +1 -1
- package/dist/lib/skills/shared/services/index.d.ts +2 -0
- package/dist/lib/skills/shared/services/index.d.ts.map +1 -1
- package/dist/lib/skills/shared/services/index.js +7 -1
- package/dist/lib/skills/shared/services/index.js.map +1 -1
- package/dist/lib/skills/shared/services/interfaces/IMemoryService.d.ts +9 -1
- package/dist/lib/skills/shared/services/interfaces/IMemoryService.d.ts.map +1 -1
- package/dist/lib/skills/shared/services/interfaces/ITaskService.d.ts +65 -2
- package/dist/lib/skills/shared/services/interfaces/ITaskService.d.ts.map +1 -1
- package/dist/lib/skills/shared/utils/index.d.ts +1 -0
- package/dist/lib/skills/shared/utils/index.d.ts.map +1 -1
- package/dist/lib/skills/shared/utils/index.js +9 -1
- package/dist/lib/skills/shared/utils/index.js.map +1 -1
- package/dist/lib/skills/shared/utils/issue-refs.d.ts +127 -0
- package/dist/lib/skills/shared/utils/issue-refs.d.ts.map +1 -0
- package/dist/lib/skills/shared/utils/issue-refs.js +179 -0
- package/dist/lib/skills/shared/utils/issue-refs.js.map +1 -0
- package/dist/lib/skills/tasks/tasks.d.ts +5 -2
- package/dist/lib/skills/tasks/tasks.d.ts.map +1 -1
- package/dist/lib/skills/tasks/tasks.js +10 -3
- package/dist/lib/skills/tasks/tasks.js.map +1 -1
- package/dist/lib/utils/dateParser.d.ts +50 -0
- package/dist/lib/utils/dateParser.d.ts.map +1 -0
- package/dist/lib/utils/dateParser.js +152 -0
- package/dist/lib/utils/dateParser.js.map +1 -0
- package/dist/lib/utils/index.d.ts +5 -0
- package/dist/lib/utils/index.d.ts.map +1 -0
- package/dist/lib/utils/index.js +14 -0
- package/dist/lib/utils/index.js.map +1 -0
- package/dist/opencode/lisa.js +8627 -1312
- package/dist/package.json +1 -1
- package/dist/project/.lisa/assets/lisa-toast.png +0 -0
- package/dist/project/.lisa/rules/shared/git-rules.md +160 -47
- package/dist/project/.lisa/rules/shared/memory-rules.md +125 -0
- package/dist/project/.lisa/rules/shared/task-rules.md +209 -0
- package/dist/project/.lisa/skills/github/SKILL.md +415 -0
- package/dist/project/.lisa/skills/lisa/SKILL.md +22 -0
- package/dist/project/.lisa/skills/memory/SKILL.md +3 -2
- package/dist/project/.lisa/skills/pr/SKILL.md +520 -0
- package/package.json +6 -5
- package/dist/hooks/session-start.js +0 -5763
- package/dist/hooks/session-stop.js +0 -5348
- package/dist/hooks/user-prompt-submit.js +0 -5406
- package/dist/project/.claude/config.js +0 -40
|
@@ -0,0 +1,520 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: pr
|
|
3
|
+
description: "PR workflow operations: create PRs, check status, link PRs to issues, poll for comments, address feedback, watch PRs, save notes to memory. Triggers on 'pr create', 'pr checks', 'pr link', 'pr poll', 'pr address', 'pr comments', 'pr remember', 'watch pr', 'watching'."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## Purpose
|
|
7
|
+
Model-neutral helper for GitHub PR workflow operations including creating PRs with auto-generated content, checking CI status, linking PRs to issues, polling for and addressing review comments, tracking PRs you're working on, and saving PR notes to memory.
|
|
8
|
+
|
|
9
|
+
## Triggers
|
|
10
|
+
Use when the user says: "create pr", "pr create", "pr checks", "check pr", "pr link", "link pr", "link pr to issue", "pr poll", "poll pr", "pr address", "address comments", "pr comments", "view comments", "watch pr", "unwatch pr", "watching", "what prs am i watching", "pr status", "pr remember", "remember pr", "save pr note".
|
|
11
|
+
|
|
12
|
+
## How to use
|
|
13
|
+
|
|
14
|
+
### Create a PR
|
|
15
|
+
Create a PR with auto-generated body, issue linking, and auto-watch:
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
# Create PR from current branch (auto-detects base branch and linked issues)
|
|
19
|
+
lisa pr create
|
|
20
|
+
|
|
21
|
+
# Create PR linking to specific issues
|
|
22
|
+
lisa pr create --issue 40 --issue 41
|
|
23
|
+
|
|
24
|
+
# Create PR with custom title and base branch
|
|
25
|
+
lisa pr create --title "feat: add pr create command" --base develop
|
|
26
|
+
|
|
27
|
+
# Create as draft PR
|
|
28
|
+
lisa pr create --draft
|
|
29
|
+
|
|
30
|
+
# Skip auto-watching the PR
|
|
31
|
+
lisa pr create --no-watch
|
|
32
|
+
|
|
33
|
+
# Skip commenting on linked issues
|
|
34
|
+
lisa pr create --no-comment
|
|
35
|
+
|
|
36
|
+
# Output as JSON
|
|
37
|
+
lisa pr create --json
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
**Features:**
|
|
41
|
+
- **Auto-detects linked issues** from branch name (supports: `15`, `15-description`, `feature/15`, `issue-15`, `fix/#15`)
|
|
42
|
+
- **Auto-generates PR body** with Summary (from commits), Test Coverage (test files changed), and Linked Issues (`Closes #N`)
|
|
43
|
+
- **Comments on linked issues** with `PR: #N`
|
|
44
|
+
- **Auto-watches the PR** for future polling
|
|
45
|
+
- **Creates Neo4j relationships** (`CLOSES`) between PR and issues
|
|
46
|
+
|
|
47
|
+
**Output:**
|
|
48
|
+
```text
|
|
49
|
+
Created PR #51: https://github.com/owner/repo/pull/51
|
|
50
|
+
Linked issues: #40
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### Check PR CI Status
|
|
54
|
+
Get the current status of CI checks for a PR:
|
|
55
|
+
|
|
56
|
+
```bash
|
|
57
|
+
# Check current repo's PR
|
|
58
|
+
lisa pr checks <PR_NUMBER>
|
|
59
|
+
|
|
60
|
+
# Check specific repo's PR
|
|
61
|
+
lisa pr checks <PR_NUMBER> --repo owner/repo
|
|
62
|
+
|
|
63
|
+
# Output as JSON
|
|
64
|
+
lisa pr checks <PR_NUMBER> --json
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
**Output:**
|
|
68
|
+
```text
|
|
69
|
+
PR #50 Checks
|
|
70
|
+
fix(github): prevent shell injection in GithubClient
|
|
71
|
+
|
|
72
|
+
✅ 2 passed, 0 failed
|
|
73
|
+
|
|
74
|
+
✓ ci/build
|
|
75
|
+
✓ security/gitguardian
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### View PR Comments
|
|
79
|
+
Fetch and display PR review comments with triage status:
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
# View all comments
|
|
83
|
+
lisa pr comments <PR_NUMBER>
|
|
84
|
+
|
|
85
|
+
# View only pending comments
|
|
86
|
+
lisa pr comments <PR_NUMBER> --filter pending
|
|
87
|
+
|
|
88
|
+
# View only addressed comments
|
|
89
|
+
lisa pr comments <PR_NUMBER> --filter addressed
|
|
90
|
+
|
|
91
|
+
# Output as JSON
|
|
92
|
+
lisa pr comments <PR_NUMBER> --json
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
**Output:**
|
|
96
|
+
```text
|
|
97
|
+
PR: fix(github): prevent shell injection in GithubClient
|
|
98
|
+
|
|
99
|
+
Comments: 4 total (2 pending, 1 addressed, 1 resolved)
|
|
100
|
+
|
|
101
|
+
src/lib/infrastructure/github/GithubClient.ts
|
|
102
|
+
:red_circle: Line:365 - @coderabbitai
|
|
103
|
+
"Shell injection risk in command argument construction..."
|
|
104
|
+
:yellow_circle: Line:138 - @coderabbitai (addressed)
|
|
105
|
+
"The current escaping only handles double quotes..."
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
**Comment Status:**
|
|
109
|
+
- :red_circle: **pending** - Needs attention
|
|
110
|
+
- :yellow_circle: **addressed** - We replied, waiting for reviewer
|
|
111
|
+
- :white_check_mark: **resolved** - Reviewer marked as resolved
|
|
112
|
+
|
|
113
|
+
### Watch a PR
|
|
114
|
+
Start tracking a PR for updates (used by polling system):
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
# Watch a PR in current repo
|
|
118
|
+
lisa pr watch <PR_NUMBER>
|
|
119
|
+
|
|
120
|
+
# Watch a PR in specific repo
|
|
121
|
+
lisa pr watch <PR_NUMBER> --repo owner/repo
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
**Output:**
|
|
125
|
+
```text
|
|
126
|
+
Now watching PR #50: fix(github): prevent shell injection in GithubClient
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### Unwatch a PR
|
|
130
|
+
Stop tracking a PR:
|
|
131
|
+
|
|
132
|
+
```bash
|
|
133
|
+
lisa pr unwatch <PR_NUMBER>
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
### Link PR to Issue
|
|
137
|
+
Create a CLOSES relationship between a PR and an issue:
|
|
138
|
+
|
|
139
|
+
```bash
|
|
140
|
+
# Link PR to issue in current repo
|
|
141
|
+
lisa pr link <PR_NUMBER> <ISSUE_NUMBER>
|
|
142
|
+
|
|
143
|
+
# Link in specific repo
|
|
144
|
+
lisa pr link <PR_NUMBER> <ISSUE_NUMBER> --repo owner/repo
|
|
145
|
+
|
|
146
|
+
# Skip commenting on the GitHub issue
|
|
147
|
+
lisa pr link <PR_NUMBER> <ISSUE_NUMBER> --no-comment
|
|
148
|
+
|
|
149
|
+
# Output as JSON
|
|
150
|
+
lisa pr link <PR_NUMBER> <ISSUE_NUMBER> --json
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
**Features:**
|
|
154
|
+
- Creates `CLOSES` relationship in Neo4j
|
|
155
|
+
- Comments on the GitHub issue with PR link (unless `--no-comment`)
|
|
156
|
+
- Idempotent - running twice returns `alreadyLinked: true`
|
|
157
|
+
- Creates PR and Issue nodes if they don't exist
|
|
158
|
+
|
|
159
|
+
**Output:**
|
|
160
|
+
```text
|
|
161
|
+
✓ Linked PR #28 to Issue #15
|
|
162
|
+
PR: https://github.com/owner/repo/pull/28
|
|
163
|
+
Issue: https://github.com/owner/repo/issues/15
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
**Already linked:**
|
|
167
|
+
```text
|
|
168
|
+
⚠ PR #28 is already linked to Issue #15
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
### Remember a PR Note
|
|
172
|
+
Save notes, decisions, or learnings about a PR to memory:
|
|
173
|
+
|
|
174
|
+
```bash
|
|
175
|
+
# Save a note about a PR
|
|
176
|
+
lisa pr remember 50 "Learned to always reply inline to review comments"
|
|
177
|
+
|
|
178
|
+
# Save a note for a specific repo
|
|
179
|
+
lisa pr remember 50 "Key decision: use factory pattern" --repo owner/repo
|
|
180
|
+
|
|
181
|
+
# Output as JSON
|
|
182
|
+
lisa pr remember 50 "Important learning" --json
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
**Features:**
|
|
186
|
+
- Saves note to memory with PR context (number and title)
|
|
187
|
+
- Tags with `github:pr` and `github:pr:<number>` for retrieval
|
|
188
|
+
- Useful for capturing decisions, learnings, and patterns from PR reviews
|
|
189
|
+
|
|
190
|
+
**Output:**
|
|
191
|
+
```text
|
|
192
|
+
✓ Saved note for PR #50
|
|
193
|
+
Fact: PR #50 (Fix auth bug): Learned to always reply inline to review comments
|
|
194
|
+
Tags: github:pr, github:pr:50
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
### Memory Integration
|
|
198
|
+
|
|
199
|
+
PR workflow integrates with Lisa's memory system for automatic knowledge capture:
|
|
200
|
+
|
|
201
|
+
**Auto-capture on merge:**
|
|
202
|
+
When a watched PR is merged, it is automatically saved to memory with the `github:pr-merged` tag. This happens during `lisa pr poll` when the PR status changes to merged (requires memory to be configured).
|
|
203
|
+
|
|
204
|
+
**Retrieve PR memories:**
|
|
205
|
+
```bash
|
|
206
|
+
# Search for PR-related memories
|
|
207
|
+
lisa memory load --query "PR merged"
|
|
208
|
+
|
|
209
|
+
# Load recent memories (PR notes will have github:pr tags)
|
|
210
|
+
lisa memory load --cache
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
**Tags:**
|
|
214
|
+
- `github:pr` - General PR memory
|
|
215
|
+
- `github:pr:<number>` - Specific PR (e.g., `github:pr:50`)
|
|
216
|
+
- `github:pr-merged` - Auto-captured merged PR
|
|
217
|
+
|
|
218
|
+
### List Watched PRs
|
|
219
|
+
See all PRs you're currently watching:
|
|
220
|
+
|
|
221
|
+
```bash
|
|
222
|
+
# List all watched PRs
|
|
223
|
+
lisa pr watching
|
|
224
|
+
|
|
225
|
+
# Filter by repo
|
|
226
|
+
lisa pr watching --repo owner/repo
|
|
227
|
+
|
|
228
|
+
# Output as JSON
|
|
229
|
+
lisa pr watching --json
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
**Output:**
|
|
233
|
+
```text
|
|
234
|
+
Watching 3 PR(s)
|
|
235
|
+
|
|
236
|
+
:green_circle: #50 fix(github): prevent shell injection in GithubClient
|
|
237
|
+
TonyCasey/lisa :white_check_mark:
|
|
238
|
+
:green_circle: #49 feat(dal): add PR entity types and Neo4j repository
|
|
239
|
+
TonyCasey/lisa :white_check_mark:
|
|
240
|
+
:purple_circle: #48 feat: add session compaction detection
|
|
241
|
+
TonyCasey/lisa :white_check_mark: (merged)
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
**PR Status Indicators:**
|
|
245
|
+
- :green_circle: Open
|
|
246
|
+
- :purple_circle: Merged
|
|
247
|
+
- :white_circle: Closed
|
|
248
|
+
|
|
249
|
+
**Checks Indicators:**
|
|
250
|
+
- :white_check_mark: All passing
|
|
251
|
+
- :x: Failures
|
|
252
|
+
- :hourglass: Pending
|
|
253
|
+
|
|
254
|
+
### Poll PR for Updates
|
|
255
|
+
Monitor a PR for new review comments with auto-address support:
|
|
256
|
+
|
|
257
|
+
```bash
|
|
258
|
+
# Poll a PR (auto-address enabled by default)
|
|
259
|
+
lisa pr poll <PR_NUMBER>
|
|
260
|
+
|
|
261
|
+
# Poll without auto-address output
|
|
262
|
+
lisa pr poll <PR_NUMBER> --no-auto-address
|
|
263
|
+
|
|
264
|
+
# Output as JSON
|
|
265
|
+
lisa pr poll <PR_NUMBER> --json
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
**Features:**
|
|
269
|
+
- Detects new comments since last poll
|
|
270
|
+
- Auto-address outputs formatted comment details when new comments found
|
|
271
|
+
- Tracks comment resolution status when available (resolution detection pending)
|
|
272
|
+
- Shows which comments need attention
|
|
273
|
+
|
|
274
|
+
**Output:**
|
|
275
|
+
```text
|
|
276
|
+
PR #50: fix(github): prevent shell injection
|
|
277
|
+
New comments: 2
|
|
278
|
+
|
|
279
|
+
src/lib/GithubClient.ts:365
|
|
280
|
+
@coderabbitai: "Shell injection risk in command argument..."
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
### Address PR Comments
|
|
284
|
+
Get formatted instructions for addressing specific comments:
|
|
285
|
+
|
|
286
|
+
```bash
|
|
287
|
+
# Get address instructions for a PR
|
|
288
|
+
lisa pr address <PR_NUMBER>
|
|
289
|
+
|
|
290
|
+
# Include more context lines around the code
|
|
291
|
+
lisa pr address <PR_NUMBER> --context 10
|
|
292
|
+
```
|
|
293
|
+
|
|
294
|
+
## PR Review Workflow
|
|
295
|
+
|
|
296
|
+
The recommended workflow for handling PR review comments:
|
|
297
|
+
|
|
298
|
+
### 1. Poll for new comments
|
|
299
|
+
```bash
|
|
300
|
+
lisa pr poll 50
|
|
301
|
+
```
|
|
302
|
+
|
|
303
|
+
### 2. Acknowledge the comment
|
|
304
|
+
Add an 👀 (eyes) emoji reaction to show you've seen the comment:
|
|
305
|
+
```bash
|
|
306
|
+
gh api repos/owner/repo/pulls/comments/COMMENT_ID/reactions -X POST -f content="eyes"
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
### 3. Address the feedback
|
|
310
|
+
- Read and understand the suggestion
|
|
311
|
+
- Make the requested code changes
|
|
312
|
+
- Commit with a descriptive message
|
|
313
|
+
|
|
314
|
+
### 4. Reply to the comment
|
|
315
|
+
Reply inline explaining what was done:
|
|
316
|
+
```bash
|
|
317
|
+
gh api repos/owner/repo/pulls/comments/COMMENT_ID/replies -X POST -f body="Fixed in commit abc123 - added try/catch with proper error logging"
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
### 5. Push and poll again
|
|
321
|
+
```bash
|
|
322
|
+
git push
|
|
323
|
+
lisa pr poll 50
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
### 6. Repeat
|
|
327
|
+
Continue polling and addressing comments until:
|
|
328
|
+
- All comments are resolved
|
|
329
|
+
- Reviewer approves the PR
|
|
330
|
+
- Any disagreements are discussed and concluded
|
|
331
|
+
|
|
332
|
+
**Example session:**
|
|
333
|
+
```bash
|
|
334
|
+
# Create PR and start watching
|
|
335
|
+
lisa pr create
|
|
336
|
+
# -> Created PR #50
|
|
337
|
+
|
|
338
|
+
# Poll for review comments
|
|
339
|
+
lisa pr poll 50
|
|
340
|
+
# -> New comment from @reviewer on line 42
|
|
341
|
+
|
|
342
|
+
# Acknowledge with eyes emoji
|
|
343
|
+
gh api repos/owner/repo/pulls/comments/12345/reactions -X POST -f content="eyes"
|
|
344
|
+
|
|
345
|
+
# Fix the code
|
|
346
|
+
vim src/file.ts
|
|
347
|
+
git add . && git commit -m "fix: add error handling per review"
|
|
348
|
+
git push
|
|
349
|
+
|
|
350
|
+
# Reply to the comment
|
|
351
|
+
gh api repos/owner/repo/pulls/comments/12345/replies -X POST -f body="Added try/catch - fixed in abc123"
|
|
352
|
+
|
|
353
|
+
# Poll again for response
|
|
354
|
+
lisa pr poll 50
|
|
355
|
+
# -> Comment resolved by reviewer
|
|
356
|
+
```
|
|
357
|
+
|
|
358
|
+
## I/O Contract
|
|
359
|
+
|
|
360
|
+
### lisa pr create
|
|
361
|
+
```json
|
|
362
|
+
{
|
|
363
|
+
"success": true,
|
|
364
|
+
"message": "Created PR #51: https://github.com/owner/repo/pull/51",
|
|
365
|
+
"pr": {
|
|
366
|
+
"number": 51,
|
|
367
|
+
"url": "https://github.com/owner/repo/pull/51",
|
|
368
|
+
"title": "feat: add pr create command",
|
|
369
|
+
"repo": "owner/repo"
|
|
370
|
+
},
|
|
371
|
+
"linkedIssues": [40, 41],
|
|
372
|
+
"body": "## Summary\n- feat: add feature\n\n## Linked Issues\nCloses #40\nCloses #41"
|
|
373
|
+
}
|
|
374
|
+
```
|
|
375
|
+
|
|
376
|
+
### lisa pr checks
|
|
377
|
+
```json
|
|
378
|
+
{
|
|
379
|
+
"repo": "owner/repo",
|
|
380
|
+
"prNumber": 50,
|
|
381
|
+
"title": "PR title",
|
|
382
|
+
"overallStatus": "success",
|
|
383
|
+
"checks": [
|
|
384
|
+
{"name": "ci/build", "status": "success", "detailsUrl": "..."}
|
|
385
|
+
],
|
|
386
|
+
"summary": ":white_check_mark: 2 passed, 0 failed"
|
|
387
|
+
}
|
|
388
|
+
```
|
|
389
|
+
|
|
390
|
+
### lisa pr comments
|
|
391
|
+
```json
|
|
392
|
+
{
|
|
393
|
+
"repo": "owner/repo",
|
|
394
|
+
"prNumber": 50,
|
|
395
|
+
"title": "PR title",
|
|
396
|
+
"comments": [
|
|
397
|
+
{
|
|
398
|
+
"id": 12345,
|
|
399
|
+
"file": "src/file.ts",
|
|
400
|
+
"line": 42,
|
|
401
|
+
"author": "reviewer",
|
|
402
|
+
"body": "Comment text",
|
|
403
|
+
"status": "pending",
|
|
404
|
+
"htmlUrl": "..."
|
|
405
|
+
}
|
|
406
|
+
],
|
|
407
|
+
"summary": {"total": 4, "pending": 2, "addressed": 1, "resolved": 1}
|
|
408
|
+
}
|
|
409
|
+
```
|
|
410
|
+
|
|
411
|
+
### lisa pr watching
|
|
412
|
+
```json
|
|
413
|
+
{
|
|
414
|
+
"action": "list",
|
|
415
|
+
"success": true,
|
|
416
|
+
"message": "Watching 3 PR(s)",
|
|
417
|
+
"watchedPrs": [
|
|
418
|
+
{
|
|
419
|
+
"number": 50,
|
|
420
|
+
"repo": "owner/repo",
|
|
421
|
+
"title": "PR title",
|
|
422
|
+
"status": "open",
|
|
423
|
+
"checksStatus": "success",
|
|
424
|
+
"unresolvedComments": 2,
|
|
425
|
+
"watchingSince": "2026-01-26T10:00:00Z"
|
|
426
|
+
}
|
|
427
|
+
]
|
|
428
|
+
}
|
|
429
|
+
```
|
|
430
|
+
|
|
431
|
+
### lisa pr poll
|
|
432
|
+
```json
|
|
433
|
+
{
|
|
434
|
+
"action": "poll",
|
|
435
|
+
"success": true,
|
|
436
|
+
"repo": "owner/repo",
|
|
437
|
+
"prNumber": 50,
|
|
438
|
+
"title": "PR title",
|
|
439
|
+
"hasNewComments": true,
|
|
440
|
+
"newCommentCount": 2,
|
|
441
|
+
"comments": [
|
|
442
|
+
{
|
|
443
|
+
"id": 12345,
|
|
444
|
+
"file": "src/file.ts",
|
|
445
|
+
"line": 42,
|
|
446
|
+
"author": "reviewer",
|
|
447
|
+
"body": "Comment text",
|
|
448
|
+
"status": "pending"
|
|
449
|
+
}
|
|
450
|
+
],
|
|
451
|
+
"addressOutput": "## PR #50 Comments\n\n### src/file.ts:42\n..."
|
|
452
|
+
}
|
|
453
|
+
```
|
|
454
|
+
|
|
455
|
+
### lisa pr address
|
|
456
|
+
```json
|
|
457
|
+
{
|
|
458
|
+
"action": "address",
|
|
459
|
+
"success": true,
|
|
460
|
+
"repo": "owner/repo",
|
|
461
|
+
"prNumber": 50,
|
|
462
|
+
"title": "PR title",
|
|
463
|
+
"pendingComments": [
|
|
464
|
+
{
|
|
465
|
+
"id": 12345,
|
|
466
|
+
"file": "src/file.ts",
|
|
467
|
+
"line": 42,
|
|
468
|
+
"author": "reviewer",
|
|
469
|
+
"body": "Comment text",
|
|
470
|
+
"codeContext": "function example() {\n // line 42\n}"
|
|
471
|
+
}
|
|
472
|
+
],
|
|
473
|
+
"formattedOutput": "..."
|
|
474
|
+
}
|
|
475
|
+
```
|
|
476
|
+
|
|
477
|
+
### lisa pr link
|
|
478
|
+
```json
|
|
479
|
+
{
|
|
480
|
+
"success": true,
|
|
481
|
+
"message": "Linked PR #28 to Issue #15",
|
|
482
|
+
"pr": {
|
|
483
|
+
"number": 28,
|
|
484
|
+
"repo": "owner/repo",
|
|
485
|
+
"title": "Fix authentication bug",
|
|
486
|
+
"url": "https://github.com/owner/repo/pull/28"
|
|
487
|
+
},
|
|
488
|
+
"issue": {
|
|
489
|
+
"number": 15,
|
|
490
|
+
"repo": "owner/repo",
|
|
491
|
+
"title": "Authentication fails on mobile",
|
|
492
|
+
"url": "https://github.com/owner/repo/issues/15"
|
|
493
|
+
},
|
|
494
|
+
"alreadyLinked": false
|
|
495
|
+
}
|
|
496
|
+
```
|
|
497
|
+
|
|
498
|
+
### lisa pr remember
|
|
499
|
+
```json
|
|
500
|
+
{
|
|
501
|
+
"success": true,
|
|
502
|
+
"message": "Saved note for PR #50",
|
|
503
|
+
"pr": {
|
|
504
|
+
"number": 50,
|
|
505
|
+
"repo": "owner/repo",
|
|
506
|
+
"title": "Fix auth bug"
|
|
507
|
+
},
|
|
508
|
+
"fact": "PR #50 (Fix auth bug): Learned to always reply inline",
|
|
509
|
+
"tags": ["github:pr", "github:pr:50"]
|
|
510
|
+
}
|
|
511
|
+
```
|
|
512
|
+
|
|
513
|
+
## Cross-model checklist
|
|
514
|
+
- Claude: Use concise lisa pr commands; prefer --json for programmatic access
|
|
515
|
+
- Gemini: Use explicit commands; avoid model-specific tokens
|
|
516
|
+
- All: Neo4j must be running for watch/watching commands (lisa doctor to verify)
|
|
517
|
+
|
|
518
|
+
## Related Skills
|
|
519
|
+
- `/git` - For version bumping, CI retriggers, and other git workflows
|
|
520
|
+
- `/github` - For GitHub Issues and Projects operations
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tonycasey/lisa",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.11.5",
|
|
4
4
|
"description": "Long-term memory for AI coding assistants. Automatic context persistence, task tracking, and knowledge capture across coding sessions. Supports Claude Code and OpenCode.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"lisa": "dist/lib/cli.js",
|
|
@@ -35,13 +35,13 @@
|
|
|
35
35
|
"scripts": {
|
|
36
36
|
"build": "tsc -p tsconfig.json",
|
|
37
37
|
"build:local": "DEPLOY_AGENTS_LOCAL=1 npm run build",
|
|
38
|
-
"postbuild": "node scripts/postbuild-copy-templates.js && node scripts/prepare-dist-package.js && node scripts/bundle-
|
|
38
|
+
"postbuild": "node scripts/postbuild-copy-templates.js && node scripts/prepare-dist-package.js && node scripts/bundle-opencode.js && node scripts/deploy-lisa.js",
|
|
39
39
|
"postinstall": "node scripts/postinstall.js",
|
|
40
40
|
"clean": "rimraf dist",
|
|
41
41
|
"package": "rm -f *.tgz releases/*.tgz dist/packages/*.tgz && npm run build && mkdir -p releases dist/packages && npm pack && mv *.tgz releases/ && cp releases/*.tgz dist/packages/",
|
|
42
42
|
"lint": "eslint 'src/**/*.{ts,js}'",
|
|
43
|
-
"test": "node --import tsx --test --test
|
|
44
|
-
"test:unit": "node --import tsx --test --test
|
|
43
|
+
"test": "node -e \"const {globSync}=require('glob');const files=globSync('tests/unit/**/*.test.ts');if(!files.length){console.error('No test files found');process.exit(1);}require('child_process').execSync('node --import tsx --experimental-test-isolation=none --test '+files.join(' '),{stdio:'inherit'})\"",
|
|
44
|
+
"test:unit": "node -e \"const {globSync}=require('glob');const files=globSync('tests/unit/**/*.test.ts');if(!files.length){console.error('No test files found');process.exit(1);}require('child_process').execSync('node --import tsx --experimental-test-isolation=none --test '+files.join(' '),{stdio:'inherit'})\"",
|
|
45
45
|
"test:integration": "tsx --test tests/integration/**/index.ts",
|
|
46
46
|
"test:integration:memory": "tsx --test tests/integration/memory/index.ts",
|
|
47
47
|
"test:integration:tasks": "tsx --test tests/integration/tasks/index.ts",
|
|
@@ -54,7 +54,8 @@
|
|
|
54
54
|
"test:install:full": "cd tests/e2e/installation/docker && docker compose --env-file ../../../../.env -f docker-compose.test.yml up --build",
|
|
55
55
|
"test:install:full:claude": "cd tests/e2e/installation/docker && CLI_MODE=claude-only docker compose --env-file ../../../../.env -f docker-compose.test.yml up --build",
|
|
56
56
|
"test:install:full:opencode": "cd tests/e2e/installation/docker && CLI_MODE=opencode-only docker compose --env-file ../../../../.env -f docker-compose.test.yml up --build",
|
|
57
|
-
"test:install:clean": "cd tests/e2e/installation/docker && docker compose down -v && docker compose -f docker-compose.test.yml down -v"
|
|
57
|
+
"test:install:clean": "cd tests/e2e/installation/docker && docker compose down -v && docker compose -f docker-compose.test.yml down -v",
|
|
58
|
+
"test:architecture": "node --import tsx --test tests/architecture/**/*.test.ts"
|
|
58
59
|
},
|
|
59
60
|
"keywords": [
|
|
60
61
|
"claude",
|