@qotaq/lalphgram 0.1.0 → 0.1.2

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/README.md CHANGED
@@ -1 +1,80 @@
1
- # Effect Monorepo Template - Notifications Package
1
+ # @qotaq/lalphgram
2
+
3
+ Event-driven notification service that bridges GitHub, Linear, and Telegram. Polls for PR and task changes, sends real-time Telegram alerts, auto-merges PRs, and manages interactive Claude plan sessions — all from a single CLI command.
4
+
5
+ ## Install
6
+
7
+ ```bash
8
+ npm i -g @qotaq/lalphgram
9
+ ```
10
+
11
+ Or run directly:
12
+
13
+ ```bash
14
+ npx @qotaq/lalphgram
15
+ ```
16
+
17
+ ## Prerequisites
18
+
19
+ - A [Telegram bot token](https://core.telegram.org/bots#how-do-i-create-a-bot) (you'll be prompted on first run)
20
+ - A GitHub personal access token stored in `~/.lalph/config/`
21
+ - (Optional) A Linear API token for issue tracking
22
+ - A `.lalph/` directory in your project root (lalph project config)
23
+
24
+ ## Usage
25
+
26
+ ```bash
27
+ lalphgram [options]
28
+ ```
29
+
30
+ ### Options
31
+
32
+ | Flag | Default | Description |
33
+ |---|---|---|
34
+ | `--interval <seconds>` | `30` | Poll interval for GitHub/Linear |
35
+ | `--keyword <word>` | `"urgent"` | Trigger keyword for comment timer |
36
+ | `--timer <seconds>` | `300` | Comment timer delay |
37
+
38
+ ### First Run
39
+
40
+ On first launch, the CLI will:
41
+
42
+ 1. Prompt for your **Telegram bot token** (stored in `~/.lalph/config/notify.telegram`)
43
+ 2. Ask whether to enable **auto-merge** and configure wait time
44
+ 3. Ask you to send a message to your bot to confirm the chat ID
45
+
46
+ After setup, the event loop starts automatically.
47
+
48
+ ## What It Does
49
+
50
+ ### Notifications
51
+
52
+ - **New PRs** — alerts when PRs are opened
53
+ - **Merge conflicts** — detects conflicts and posts a GitHub comment + Telegram alert
54
+ - **CI failures** — reports failed checks with names
55
+ - **New tasks** — notifies on Linear/GitHub issue creation and state changes
56
+ - **PR comments** — routes to configurable comment timer for issue triage
57
+
58
+ ### Auto-Merge
59
+
60
+ When enabled, monitors PRs and merges them automatically once:
61
+ - All CI checks pass
62
+ - A configurable cooldown period has elapsed since the last push
63
+
64
+ ### Interactive Plan Sessions
65
+
66
+ Manage Claude coding plans directly from Telegram:
67
+
68
+ 1. Tap **Plan** → select project → choose plan type (Feature/Bug/Refactor/Other)
69
+ 2. Describe the work → tap **Done**
70
+ 3. Claude analyzes and produces spec files (architecture diagrams, test plans)
71
+ 4. Review specs via Telegraph link → **Approve** or **Abort**
72
+ 5. Ask follow-up questions or interrupt at any point
73
+
74
+ ## Architecture
75
+
76
+ Built with [Effect-TS](https://effect.website) — services use `Context.Tag` for dependency injection, `Stream` for event processing, and `Layer` for composition. The entire system runs as a single long-lived process with concurrent polling fibers.
77
+
78
+ ## License
79
+
80
+ MIT
package/dist/cjs/Main.js CHANGED
@@ -1,3 +1,8 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * lalph-notify CLI entry point — zero-config notification service using lalph project config
4
+ * @since 1.0.0
5
+ */
1
6
  "use strict";
2
7
 
3
8
  var _cli = require("@effect/cli");
@@ -12,11 +17,6 @@ var _LalphConfig = require("./services/LalphConfig.js");
12
17
  var _MessengerAdapter = require("./services/MessengerAdapter/MessengerAdapter.js");
13
18
  var _PlanSession = require("./services/PlanSession.js");
14
19
  var _TelegramConfig = require("./services/TelegramConfig.js");
15
- /**
16
- * lalph-notify CLI entry point — zero-config notification service using lalph project config
17
- * @since 1.0.0
18
- */
19
-
20
20
  const lalphNotifyCommand = /*#__PURE__*/_cli.Command.make("lalph-notify", {
21
21
  interval: _cli.Options.integer("interval").pipe(_cli.Options.withDefault(30), _cli.Options.withDescription("Poll interval in seconds")),
22
22
  keyword: _cli.Options.text("keyword").pipe(_cli.Options.withDefault("urgent"), _cli.Options.withDescription("Trigger keyword for comment timer")),
@@ -1 +1 @@
1
- {"version":3,"file":"Main.js","names":["_cli","require","_platform","_platformNode","_effect","_nodeUrl","_AppContext","_AppRuntimeConfig","_EventLoop","_LalphConfig","_MessengerAdapter","_PlanSession","_TelegramConfig","lalphNotifyCommand","CliCommand","make","interval","Options","integer","pipe","withDefault","withDescription","keyword","text","timer","Effect","gen","store","TelegramConfig","existingTelegram","get","botToken","Option","isSome","value","Prompt","message","storedChatId","chatId","isNone","set","TelegramConfigSchema","autoMergeEnabled","confirm","initial","autoMergeWaitMinutes","min","runtimeConfig","RuntimeConfig","pollIntervalSeconds","triggerKeyword","timerDelaySeconds","planCommandLayer","Layer","effect","PlanCommandBuilder","appContext","AppContext","fs","FileSystem","pathService","Path","realClaudePath","PlatformCommand","string","map","s","trim","tsxPath","shimMainTs","join","dirname","fileURLToPath","import","meta","url","log","annotateLogs","shimDir","configDir","makeDirectory","recursive","shimPath","shimScript","JSON","stringify","writeFileString","chmod","originalPath","process","env","shimmedPath","tempFile","workingDirectory","projectRoot","PATH","stdout","stderr","stdin","appLayer","mergeAll","succeed","AppRuntimeConfig","creds","LalphConfig","Console","issueSource","repoFullName","messenger","MessengerAdapter","messages","incomingMessages","Stream","take","runCollect","firstMsg","runEventLoop","provide","MainLayer","cli","run","name","version","logLevelLayer","unwrapEffect","Config","logLevel","LogLevel","Info","Logger","minimumLogLevel","suspend","argv","TelegramConfigLive","AppContextLive","FetchHttpClient","layer","NodeContext","NodeRuntime","runMain"],"sources":["../../src/Main.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Main.js","names":["_cli","require","_platform","_platformNode","_effect","_nodeUrl","_AppContext","_AppRuntimeConfig","_EventLoop","_LalphConfig","_MessengerAdapter","_PlanSession","_TelegramConfig","lalphNotifyCommand","CliCommand","make","interval","Options","integer","pipe","withDefault","withDescription","keyword","text","timer","Effect","gen","store","TelegramConfig","existingTelegram","get","botToken","Option","isSome","value","Prompt","message","storedChatId","chatId","isNone","set","TelegramConfigSchema","autoMergeEnabled","confirm","initial","autoMergeWaitMinutes","min","runtimeConfig","RuntimeConfig","pollIntervalSeconds","triggerKeyword","timerDelaySeconds","planCommandLayer","Layer","effect","PlanCommandBuilder","appContext","AppContext","fs","FileSystem","pathService","Path","realClaudePath","PlatformCommand","string","map","s","trim","tsxPath","shimMainTs","join","dirname","fileURLToPath","import","meta","url","log","annotateLogs","shimDir","configDir","makeDirectory","recursive","shimPath","shimScript","JSON","stringify","writeFileString","chmod","originalPath","process","env","shimmedPath","tempFile","workingDirectory","projectRoot","PATH","stdout","stderr","stdin","appLayer","mergeAll","succeed","AppRuntimeConfig","creds","LalphConfig","Console","issueSource","repoFullName","messenger","MessengerAdapter","messages","incomingMessages","Stream","take","runCollect","firstMsg","runEventLoop","provide","MainLayer","cli","run","name","version","logLevelLayer","unwrapEffect","Config","logLevel","LogLevel","Info","Logger","minimumLogLevel","suspend","argv","TelegramConfigLive","AppContextLive","FetchHttpClient","layer","NodeContext","NodeRuntime","runMain"],"sources":["../../src/Main.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -37,7 +37,7 @@ const makeRepoFromFullName = fullName => new _GitHubSchemas.GitHubRepo({
37
37
  html_url: ""
38
38
  });
39
39
  const isCISuccess = (state, checkRuns) => {
40
- if (checkRuns.length === 0) return state === "success";
40
+ if (checkRuns.length === 0) return state !== "failure";
41
41
  const allChecksCompleted = _effect.Array.every(checkRuns, cr => cr.conclusion !== null);
42
42
  const allChecksPassed = _effect.Array.every(checkRuns, cr => cr.conclusion === "success" || cr.conclusion === "skipped");
43
43
  return allChecksCompleted && allChecksPassed && state !== "failure";
@@ -1,2 +1,3 @@
1
+ #!/usr/bin/env node
1
2
  export {};
2
3
  //# sourceMappingURL=Main.d.ts.map
@@ -37,6 +37,6 @@ export declare class AutoMerge extends AutoMerge_base {
37
37
  * @since 1.0.0
38
38
  * @category layers
39
39
  */
40
- export declare const AutoMergeLive: Layer.Layer<AutoMerge, never, LalphConfig | GitHubClient | AppRuntimeConfig>;
40
+ export declare const AutoMergeLive: Layer.Layer<AutoMerge, never, GitHubClient | LalphConfig | AppRuntimeConfig>;
41
41
  export {};
42
42
  //# sourceMappingURL=AutoMerge.d.ts.map
@@ -15,12 +15,12 @@ export { ABORT_BUTTON_LABEL, APPROVE_BUTTON_LABEL, BUFFER_BUTTON_LABEL, BUG_BUTT
15
15
  * @since 1.0.0
16
16
  * @category layers
17
17
  */
18
- export declare const MainLayer: Layer.Layer<import("./PlanOverviewUploader.js").PlanOverviewUploader | import("./OctokitClient.js").OctokitClient | import("./ProjectStore.js").ProjectStore | MessengerAdapter | PlanSession | LalphConfig | TaskTracker | GitHubClient | AutoMerge | PullRequestTracker | BranchParser | CommentTimer, import("./PlanOverviewUploader.js").PlanOverviewUploaderError | import("./OctokitClient.js").OctokitClientError | import("./MessengerAdapter/MessengerAdapter.js").MessengerAdapterError | import("./LalphConfig.js").LalphConfigError | import("./LinearSdkClient.js").LinearSdkClientError | import("./PullRequestTracker.js").PullRequestTrackerError, import("@effect/platform/HttpClient").HttpClient | import("@effect/platform/FileSystem").FileSystem | import("@effect/platform/Path").Path | import("./AppContext.js").AppContext | import("@effect/platform/CommandExecutor").CommandExecutor | import("./TelegramConfig.js").TelegramConfig | import("./AppRuntimeConfig.js").AppRuntimeConfig | import("./PlanSession.js").PlanCommandBuilder>;
18
+ export declare const MainLayer: Layer.Layer<AutoMerge | GitHubClient | LalphConfig | import("./OctokitClient.js").OctokitClient | MessengerAdapter | TaskTracker | PullRequestTracker | BranchParser | CommentTimer | PlanSession | import("./ProjectStore.js").ProjectStore | import("./PlanOverviewUploader.js").PlanOverviewUploader, import("./LalphConfig.js").LalphConfigError | import("./OctokitClient.js").OctokitClientError | import("./MessengerAdapter/MessengerAdapter.js").MessengerAdapterError | import("./LinearSdkClient.js").LinearSdkClientError | import("./PullRequestTracker.js").PullRequestTrackerError | import("./PlanOverviewUploader.js").PlanOverviewUploaderError, import("./AppRuntimeConfig.js").AppRuntimeConfig | import("@effect/platform/FileSystem").FileSystem | import("@effect/platform/Path").Path | import("./AppContext.js").AppContext | import("@effect/platform/CommandExecutor").CommandExecutor | import("./TelegramConfig.js").TelegramConfig | import("./PlanSession.js").PlanCommandBuilder | import("@effect/platform/HttpClient").HttpClient>;
19
19
  /**
20
20
  * The main event loop that boots the chat state machine, bridges streams,
21
21
  * and dispatches external events (PR/task notifications).
22
22
  * @since 1.0.0
23
23
  * @category event-loop
24
24
  */
25
- export declare const runEventLoop: Effect.Effect<void, import("./MessengerAdapter/MessengerAdapter.js").MessengerAdapterError, import("./PlanOverviewUploader.js").PlanOverviewUploader | import("./ProjectStore.js").ProjectStore | MessengerAdapter | PlanSession | TaskTracker | GitHubClient | AutoMerge | PullRequestTracker | BranchParser | CommentTimer>;
25
+ export declare const runEventLoop: Effect.Effect<void, import("./MessengerAdapter/MessengerAdapter.js").MessengerAdapterError, AutoMerge | GitHubClient | MessengerAdapter | TaskTracker | PullRequestTracker | BranchParser | CommentTimer | PlanSession | import("./ProjectStore.js").ProjectStore | import("./PlanOverviewUploader.js").PlanOverviewUploader>;
26
26
  //# sourceMappingURL=EventLoop.d.ts.map
package/dist/esm/Main.js CHANGED
@@ -1,3 +1,4 @@
1
+ #!/usr/bin/env node
1
2
  /**
2
3
  * lalph-notify CLI entry point — zero-config notification service using lalph project config
3
4
  * @since 1.0.0
@@ -1 +1 @@
1
- {"version":3,"file":"Main.js","names":["Command","CliCommand","Options","Prompt","PlatformCommand","FetchHttpClient","FileSystem","Path","NodeContext","NodeRuntime","Config","Console","Effect","Layer","Logger","LogLevel","Option","Stream","fileURLToPath","AppContext","AppContextLive","AppRuntimeConfig","RuntimeConfig","MainLayer","runEventLoop","LalphConfig","MessengerAdapter","PlanCommandBuilder","TelegramConfig","TelegramConfigLive","TelegramConfigSchema","lalphNotifyCommand","make","interval","integer","pipe","withDefault","withDescription","keyword","text","timer","gen","store","existingTelegram","get","botToken","isSome","value","message","storedChatId","chatId","isNone","set","autoMergeEnabled","confirm","initial","autoMergeWaitMinutes","min","runtimeConfig","pollIntervalSeconds","triggerKeyword","timerDelaySeconds","planCommandLayer","effect","appContext","fs","pathService","realClaudePath","string","map","s","trim","tsxPath","shimMainTs","join","dirname","import","meta","url","log","annotateLogs","shimDir","configDir","makeDirectory","recursive","shimPath","shimScript","JSON","stringify","writeFileString","chmod","originalPath","process","env","shimmedPath","tempFile","workingDirectory","projectRoot","PATH","stdout","stderr","stdin","appLayer","mergeAll","succeed","creds","issueSource","repoFullName","messenger","messages","incomingMessages","take","runCollect","firstMsg","provide","cli","run","name","version","logLevelLayer","unwrapEffect","logLevel","Info","minimumLogLevel","suspend","argv","layer","runMain"],"sources":["../../src/Main.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Main.js","names":["Command","CliCommand","Options","Prompt","PlatformCommand","FetchHttpClient","FileSystem","Path","NodeContext","NodeRuntime","Config","Console","Effect","Layer","Logger","LogLevel","Option","Stream","fileURLToPath","AppContext","AppContextLive","AppRuntimeConfig","RuntimeConfig","MainLayer","runEventLoop","LalphConfig","MessengerAdapter","PlanCommandBuilder","TelegramConfig","TelegramConfigLive","TelegramConfigSchema","lalphNotifyCommand","make","interval","integer","pipe","withDefault","withDescription","keyword","text","timer","gen","store","existingTelegram","get","botToken","isSome","value","message","storedChatId","chatId","isNone","set","autoMergeEnabled","confirm","initial","autoMergeWaitMinutes","min","runtimeConfig","pollIntervalSeconds","triggerKeyword","timerDelaySeconds","planCommandLayer","effect","appContext","fs","pathService","realClaudePath","string","map","s","trim","tsxPath","shimMainTs","join","dirname","import","meta","url","log","annotateLogs","shimDir","configDir","makeDirectory","recursive","shimPath","shimScript","JSON","stringify","writeFileString","chmod","originalPath","process","env","shimmedPath","tempFile","workingDirectory","projectRoot","PATH","stdout","stderr","stdin","appLayer","mergeAll","succeed","creds","issueSource","repoFullName","messenger","messages","incomingMessages","take","runCollect","firstMsg","provide","cli","run","name","version","logLevelLayer","unwrapEffect","logLevel","Info","minimumLogLevel","suspend","argv","layer","runMain"],"sources":["../../src/Main.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -28,7 +28,7 @@ const makeRepoFromFullName = fullName => new GitHubRepo({
28
28
  html_url: ""
29
29
  });
30
30
  const isCISuccess = (state, checkRuns) => {
31
- if (checkRuns.length === 0) return state === "success";
31
+ if (checkRuns.length === 0) return state !== "failure";
32
32
  const allChecksCompleted = Array.every(checkRuns, cr => cr.conclusion !== null);
33
33
  const allChecksPassed = Array.every(checkRuns, cr => cr.conclusion === "success" || cr.conclusion === "skipped");
34
34
  return allChecksCompleted && allChecksPassed && state !== "failure";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qotaq/lalphgram",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "Notification service for task tracker and GitHub events",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -22,6 +22,9 @@
22
22
  "telegraf": "latest",
23
23
  "zod": "latest"
24
24
  },
25
+ "bin": {
26
+ "lalphgram": "./dist/esm/Main.js"
27
+ },
25
28
  "main": "./dist/cjs/index.js",
26
29
  "module": "./dist/esm/index.js",
27
30
  "types": "./dist/dts/index.d.ts",
package/src/Main.ts CHANGED
@@ -1,3 +1,4 @@
1
+ #!/usr/bin/env node
1
2
  /**
2
3
  * lalph-notify CLI entry point — zero-config notification service using lalph project config
3
4
  * @since 1.0.0
@@ -44,7 +44,7 @@ const makeRepoFromFullName = (fullName: string) =>
44
44
  })
45
45
 
46
46
  const isCISuccess = (state: string, checkRuns: ReadonlyArray<{ readonly conclusion: string | null }>) => {
47
- if (checkRuns.length === 0) return state === "success"
47
+ if (checkRuns.length === 0) return state !== "failure"
48
48
  const allChecksCompleted = Array.every(checkRuns, (cr) => cr.conclusion !== null)
49
49
  const allChecksPassed = Array.every(checkRuns, (cr) => cr.conclusion === "success" || cr.conclusion === "skipped")
50
50
  return allChecksCompleted && allChecksPassed && state !== "failure"