Skip to content

Commit bb9c0ab

Browse files
feat: add support for OpenAI API and multi-language digest generation
1 parent db43c24 commit bb9c0ab

File tree

10 files changed

+328
-226
lines changed

10 files changed

+328
-226
lines changed

.github/workflows/daily-digest.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,11 @@ jobs:
3838
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
3939
ANTHROPIC_BASE_URL: ${{ secrets.ANTHROPIC_BASE_URL }}
4040
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
41+
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
42+
OPENAI_BASE_URL: ${{ secrets.OPENAI_BASE_URL }}
43+
OPENAI_MODEL: ${{ vars.OPENAI_MODEL }}
4144
DIGEST_REPO: ${{ github.repository }}
45+
DIGEST_LANGS: ${{ vars.DIGEST_LANGS || 'vi' }}
4246
run: pnpm start
4347

4448
- name: Commit digest files

.github/workflows/monthly-digest.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,11 @@ jobs:
3636
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
3737
ANTHROPIC_BASE_URL: ${{ secrets.ANTHROPIC_BASE_URL }}
3838
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
39+
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
40+
OPENAI_BASE_URL: ${{ secrets.OPENAI_BASE_URL }}
41+
OPENAI_MODEL: ${{ vars.OPENAI_MODEL }}
3942
DIGEST_REPO: ${{ github.repository }}
43+
DIGEST_LANGS: ${{ vars.DIGEST_LANGS || 'vi' }}
4044
run: pnpm monthly
4145

4246
- name: Commit monthly report

.github/workflows/weekly-digest.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,11 @@ jobs:
3636
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
3737
ANTHROPIC_BASE_URL: ${{ secrets.ANTHROPIC_BASE_URL }}
3838
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
39+
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
40+
OPENAI_BASE_URL: ${{ secrets.OPENAI_BASE_URL }}
41+
OPENAI_MODEL: ${{ vars.OPENAI_MODEL }}
3942
DIGEST_REPO: ${{ github.repository }}
43+
DIGEST_LANGS: ${{ vars.DIGEST_LANGS || 'vi' }}
4044
run: pnpm weekly
4145

4246
- name: Commit weekly report

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
.env
2+
.env.local
23
.DS_Store
34
node_modules/
45
dist/

CLAUDE.md

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,21 @@ pnpm format # Prettier --write src
1515
pnpm format:check # Prettier --check src
1616
```
1717

18-
Required env vars for local runs:
18+
Required env vars for local runs (set **one** LLM provider group):
1919

2020
```bash
2121
export GITHUB_TOKEN=ghp_xxxxx
22+
23+
# Option A — OpenAI-compatible (takes precedence when OPENAI_API_KEY is set)
24+
export OPENAI_API_KEY=sk-xxxxx
25+
export OPENAI_BASE_URL=https://your-provider/v1 # optional
26+
export OPENAI_MODEL=gpt-4o # optional, default: gpt-4o
27+
28+
# Option B — Anthropic (default when OPENAI_API_KEY is absent)
2229
export ANTHROPIC_API_KEY=sk-ant-xxxxx
2330
export ANTHROPIC_BASE_URL=https://api.kimi.com/coding/ # omit for Anthropic
31+
export ANTHROPIC_MODEL=claude-sonnet-4-6 # optional
32+
2433
export DIGEST_REPO=owner/repo # omit to skip GitHub issue creation
2534
```
2635

package.json

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,20 +4,21 @@
44
"type": "module",
55
"packageManager": "pnpm@9.15.9",
66
"scripts": {
7-
"start": "tsx src/index.ts",
7+
"start": "tsx --env-file=.env.local src/index.ts",
88
"typecheck": "tsc --noEmit",
99
"lint": "eslint src",
1010
"lint:fix": "eslint src --fix",
1111
"format": "prettier --write src",
1212
"format:check": "prettier --check src",
1313
"manifest": "tsx src/generate-manifest.ts",
14-
"weekly": "tsx src/weekly.ts",
15-
"monthly": "tsx src/monthly.ts",
16-
"notify": "tsx src/notify.ts"
14+
"weekly": "tsx --env-file=.env.local src/weekly.ts",
15+
"monthly": "tsx --env-file=.env.local src/monthly.ts",
16+
"notify": "tsx --env-file=.env.local src/notify.ts"
1717
},
1818
"dependencies": {
1919
"@anthropic-ai/sdk": "^0.36.3",
20-
"js-yaml": "^4.1.1"
20+
"js-yaml": "^4.1.1",
21+
"openai": "^6.27.0"
2122
},
2223
"devDependencies": {
2324
"@eslint/js": "^9",

pnpm-lock.yaml

Lines changed: 17 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)