René's URL Explorer Experiment


Title: feat(notify): pass STATUS, FAIL_REASON, BODY, TITLE as env vars to notify hook by Lellansin · Pull Request #90 · lessweb/deepcode-cli · GitHub

Open Graph Title: feat(notify): pass STATUS, FAIL_REASON, BODY, TITLE as env vars to notify hook by Lellansin · Pull Request #90 · lessweb/deepcode-cli

X Title: feat(notify): pass STATUS, FAIL_REASON, BODY, TITLE as env vars to notify hook by Lellansin · Pull Request #90 · lessweb/deepcode-cli

Description: 变更内容 src/common/notify.ts:新增 NotifyContext 类型(status/failReason/body/title);buildNotifyEnv 条件注入 STATUS、FAIL_REASON、BODY、TITLE 环境变量;launchNotifyScript 新增可选的 context 参数;buildNotifyEnv 不再将 process.env 全量透传给 notify 脚本,仅暴露显式配置的变量 src/session.ts:maybeNotifyTaskCompletion 从会话中提取最后一条 assistant 消息作为 BODY,并传入 session.status、session.failReason、session.summary 作为 context src/tests/settings-and-notify.test.ts:新增 5 个测试用例,覆盖无 context、全量 context、部分 context、空字符串拒绝、特殊字符保留 src/tests/session.test.ts:新增 2 个集成测试用例(成功/失败场景),验证 notify hook 接收到的 STATUS、FAIL_REASON、BODY、TITLE、DURATION 上下文 docs/configuration.md / docs/configuration_en.md:新增 notify 环境变量表格;新增飞书 Webhook 通知示例 注入的环境变量 变量 说明 DURATION 会话耗时(秒) STATUS "completed" 或 "failed" FAIL_REASON 失败原因(仅失败时) BODY 最后一条 AI 回复文本 TITLE 会话标题(对应 resume 列表标题) 背景 当前 notify hook 仅注入 DURATION 和用户自定义的 settings.env 变量,通知脚本无法判断任务成功/失败,也无法获取会话标题或 AI 回复内容。同时原有实现将 process.env 全量透传给 notify 子进程,存在 API Key 等敏感信息泄露风险。本次改动补齐了这些关键上下文,并收紧了环境变量暴露。 验证 npm run check(typecheck + lint + format)✅ npm test(248 tests, 0 fail)✅

Open Graph Description: 变更内容 src/common/notify.ts:新增 NotifyContext 类型(status/failReason/body/title);buildNotifyEnv 条件注入 STATUS、FAIL_REASON、BODY、TITLE 环境变量;launchNotifyScript 新增可选的 context 参数;buildNotifyEnv 不再将 process.en...

X Description: 变更内容 src/common/notify.ts:新增 NotifyContext 类型(status/failReason/body/title);buildNotifyEnv 条件注入 STATUS、FAIL_REASON、BODY、TITLE 环境变量;launchNotifyScript 新增可选的 context 参数;buildNotifyEnv 不再将 process.en...

Opengraph URL: https://github.com/lessweb/deepcode-cli/pull/90

X: @github

direct link

Domain: github.com

route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:62215911-9a21-a052-bcf1-68eb7f04505e
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idBB5E:244FA9:4422B7:6316E9:6A4E065C
html-safe-nonce4fa0a312de35dd618ad36ee5d66d1d0710f31b3f415f04254158a4376d694c95
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJCQjVFOjI0NEZBOTo0NDIyQjc6NjMxNkU5OjZBNEUwNjVDIiwidmlzaXRvcl9pZCI6Ijg0MDQ5ODQyOTExNzYzNTEzMjQiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ==
visitor-hmacada5e6df3d524744369eabbf8c2a67464bb3339b9d79c5ade1b1d6d77b7a55e9
hovercard-subject-tagpull_request:3706041928
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///pull_requests/show/files
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/lessweb/deepcode-cli/pull/90/files
twitter:imagehttps://avatars.githubusercontent.com/u/2081487?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/2081487?s=400&v=4
og:image:alt变更内容 src/common/notify.ts:新增 NotifyContext 类型(status/failReason/body/title);buildNotifyEnv 条件注入 STATUS、FAIL_REASON、BODY、TITLE 环境变量;launchNotifyScript 新增可选的 context 参数;buildNotifyEnv 不再将 process.en...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
Nonedf0492960db29b4938cb72070351d6b1d0c6c0767b27ceb8394bbf4fcc0223c6
turbo-cache-controlno-preview
diff-viewunified
go-importgithub.com/lessweb/deepcode-cli git https://github.com/lessweb/deepcode-cli.git
octolytics-dimension-user_id118287711
octolytics-dimension-user_loginlessweb
octolytics-dimension-repository_id1223512305
octolytics-dimension-repository_nwolessweb/deepcode-cli
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id1223512305
octolytics-dimension-repository_network_root_nwolessweb/deepcode-cli
turbo-body-classeslogged-out env-production page-responsive full-width
disable-turbotrue
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release52bde38e24398476f8eb1e0760c81346c6a00812
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/lessweb/deepcode-cli/pull/90/files#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Flessweb%2Fdeepcode-cli%2Fpull%2F90%2Ffiles
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
GitHub Starshttps://stars.github.com
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Flessweb%2Fdeepcode-cli%2Fpull%2F90%2Ffiles
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fpull_requests%2Fshow%2Ffiles&source=header-repo&source_repo=lessweb%2Fdeepcode-cli
Reloadhttps://github.com/lessweb/deepcode-cli/pull/90/files
Reloadhttps://github.com/lessweb/deepcode-cli/pull/90/files
Reloadhttps://github.com/lessweb/deepcode-cli/pull/90/files
Please reload this pagehttps://github.com/lessweb/deepcode-cli/pull/90/files
lessweb https://github.com/lessweb
deepcode-clihttps://github.com/lessweb/deepcode-cli
Notifications https://github.com/login?return_to=%2Flessweb%2Fdeepcode-cli
Fork 152 https://github.com/login?return_to=%2Flessweb%2Fdeepcode-cli
Star 1.7k https://github.com/login?return_to=%2Flessweb%2Fdeepcode-cli
Code https://github.com/lessweb/deepcode-cli
Issues 43 https://github.com/lessweb/deepcode-cli/issues
Pull requests 22 https://github.com/lessweb/deepcode-cli/pulls
Actions https://github.com/lessweb/deepcode-cli/actions
Projects https://github.com/lessweb/deepcode-cli/projects
Security and quality 0 https://github.com/lessweb/deepcode-cli/security
Insights https://github.com/lessweb/deepcode-cli/pulse
Code https://github.com/lessweb/deepcode-cli
Issues https://github.com/lessweb/deepcode-cli/issues
Pull requests https://github.com/lessweb/deepcode-cli/pulls
Actions https://github.com/lessweb/deepcode-cli/actions
Projects https://github.com/lessweb/deepcode-cli/projects
Security and quality https://github.com/lessweb/deepcode-cli/security
Insights https://github.com/lessweb/deepcode-cli/pulse
Sign up for GitHub https://github.com/signup?return_to=%2Flessweb%2Fdeepcode-cli%2Fissues%2Fnew%2Fchoose
terms of servicehttps://docs.github.com/terms
privacy statementhttps://docs.github.com/privacy
Sign inhttps://github.com/login?return_to=%2Flessweb%2Fdeepcode-cli%2Fissues%2Fnew%2Fchoose
qorzjhttps://github.com/qorzj
lessweb:mainhttps://github.com/lessweb/deepcode-cli/tree/main
Lellansin:feature/notify-env-contexthttps://github.com/Lellansin/deepcode-cli/tree/feature/notify-env-context
Conversation 2 https://github.com/lessweb/deepcode-cli/pull/90
Commits 5 https://github.com/lessweb/deepcode-cli/pull/90/commits
Checks 9 https://github.com/lessweb/deepcode-cli/pull/90/checks
Files changed https://github.com/lessweb/deepcode-cli/pull/90/files
Please reload this pagehttps://github.com/lessweb/deepcode-cli/pull/90/files
feat(notify): pass STATUS, FAIL_REASON, BODY, TITLE as env vars to notify hook https://github.com/lessweb/deepcode-cli/pull/90/files#top
Show all changes 5 commits https://github.com/lessweb/deepcode-cli/pull/90/files
3fef0fc feat(notify): pass STATUS, FAIL_REASON, BODY as env vars to notify hook Lellansin May 19, 2026 https://github.com/lessweb/deepcode-cli/pull/90/commits/3fef0fc5137af49f218237fa0e919159fb231122
a3ff70e docs(notify): add Windows Terminal, Linux, and msg popup notification… Lellansin May 19, 2026 https://github.com/lessweb/deepcode-cli/pull/90/commits/a3ff70e82d548a8c1273ea377844f078cbd0ae00
479606f docs(notify): replace terminal notification examples with Feishu webh… Lellansin May 19, 2026 https://github.com/lessweb/deepcode-cli/pull/90/commits/479606f6a7087398302334996e95cb8eb2d841b3
dec8b07 Merge branch 'main' into feature/notify-env-context qorzj May 19, 2026 https://github.com/lessweb/deepcode-cli/pull/90/commits/dec8b07ffb0394a2205357c4a2364d940dd769bf
f9d2737 docs(notify): extract notification examples to standalone notify.md qorzj May 19, 2026 https://github.com/lessweb/deepcode-cli/pull/90/commits/f9d2737f2737d195ab94e587d378c322f13b411a
Clear filters https://github.com/lessweb/deepcode-cli/pull/90/files
Please reload this pagehttps://github.com/lessweb/deepcode-cli/pull/90/files
Please reload this pagehttps://github.com/lessweb/deepcode-cli/pull/90/files
README-en.md https://github.com/lessweb/deepcode-cli/pull/90/files#diff-423106708231f87bb4bc44163037961a21853bbcda4795297b34f4e0f048cfb6
README-zh_CN.md https://github.com/lessweb/deepcode-cli/pull/90/files#diff-099beda0196f3588b806c1d7ace4d054b6a1caf09bfede3b0c1a9ac7cfb74473
README.md https://github.com/lessweb/deepcode-cli/pull/90/files#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5
configuration.md https://github.com/lessweb/deepcode-cli/pull/90/files#diff-17ed18489a956f326ec0fe4040850c5bc9261d4631fb42da4c52891d74a59180
configuration_en.md https://github.com/lessweb/deepcode-cli/pull/90/files#diff-f5f6cc8aa22f47faafd510f2402eb795ccd1e10c09f9b9640d788222ace08f95
notify.md https://github.com/lessweb/deepcode-cli/pull/90/files#diff-512f2610d77d9baa8fca74587e688248009df856ea1af7cec1b76edc2068a014
notify_en.md https://github.com/lessweb/deepcode-cli/pull/90/files#diff-d8a650773b5b6bee24441616e8b6cac107b38c6a7e9ebf04262e25874741ec03
notify.ts https://github.com/lessweb/deepcode-cli/pull/90/files#diff-cbc6c7a555b2d99d3de540a67b01064a2ca5ad99e171ee6bb7012067969bc870
session.ts https://github.com/lessweb/deepcode-cli/pull/90/files#diff-96998a2148aa3d52ad3e80303d0ad88fc43a4afd08966b5330a5657021ae52bb
session.test.ts https://github.com/lessweb/deepcode-cli/pull/90/files#diff-de8fd838e685eb171fd68dd90115fa8a20cf6d0b1aa1756278c53d2825eae713
settings-and-notify.test.ts https://github.com/lessweb/deepcode-cli/pull/90/files#diff-3d83b1922803e5ba919a973c5d7f9e1b2bbbe0b419994ad0a1ee7933183806f7
README-en.mdhttps://github.com/lessweb/deepcode-cli/pull/90/files#diff-423106708231f87bb4bc44163037961a21853bbcda4795297b34f4e0f048cfb6
View file https://github.com/Lellansin/deepcode-cli/blob/f9d2737f2737d195ab94e587d378c322f13b411a/README-en.md
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/lessweb/deepcode-cli/pull/90/{{ revealButtonHref }}
https://github.com/lessweb/deepcode-cli/pull/90/files#diff-423106708231f87bb4bc44163037961a21853bbcda4795297b34f4e0f048cfb6
https://github.com/lessweb/deepcode-cli/pull/90/files#diff-423106708231f87bb4bc44163037961a21853bbcda4795297b34f4e0f048cfb6
README-zh_CN.mdhttps://github.com/lessweb/deepcode-cli/pull/90/files#diff-099beda0196f3588b806c1d7ace4d054b6a1caf09bfede3b0c1a9ac7cfb74473
View file https://github.com/Lellansin/deepcode-cli/blob/f9d2737f2737d195ab94e587d378c322f13b411a/README-zh_CN.md
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/lessweb/deepcode-cli/pull/90/{{ revealButtonHref }}
https://github.com/lessweb/deepcode-cli/pull/90/files#diff-099beda0196f3588b806c1d7ace4d054b6a1caf09bfede3b0c1a9ac7cfb74473
https://github.com/lessweb/deepcode-cli/pull/90/files#diff-099beda0196f3588b806c1d7ace4d054b6a1caf09bfede3b0c1a9ac7cfb74473
README.mdhttps://github.com/lessweb/deepcode-cli/pull/90/files#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5
View file https://github.com/Lellansin/deepcode-cli/blob/f9d2737f2737d195ab94e587d378c322f13b411a/README.md
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/lessweb/deepcode-cli/pull/90/{{ revealButtonHref }}
https://github.com/lessweb/deepcode-cli/pull/90/files#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5
https://github.com/lessweb/deepcode-cli/pull/90/files#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5
docs/configuration.mdhttps://github.com/lessweb/deepcode-cli/pull/90/files#diff-17ed18489a956f326ec0fe4040850c5bc9261d4631fb42da4c52891d74a59180
View file https://github.com/Lellansin/deepcode-cli/blob/f9d2737f2737d195ab94e587d378c322f13b411a/docs/configuration.md
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/lessweb/deepcode-cli/pull/90/{{ revealButtonHref }}
https://github.com/lessweb/deepcode-cli/pull/90/files#diff-17ed18489a956f326ec0fe4040850c5bc9261d4631fb42da4c52891d74a59180
https://github.com/lessweb/deepcode-cli/pull/90/files#diff-17ed18489a956f326ec0fe4040850c5bc9261d4631fb42da4c52891d74a59180
docs/configuration_en.mdhttps://github.com/lessweb/deepcode-cli/pull/90/files#diff-f5f6cc8aa22f47faafd510f2402eb795ccd1e10c09f9b9640d788222ace08f95
View file https://github.com/Lellansin/deepcode-cli/blob/f9d2737f2737d195ab94e587d378c322f13b411a/docs/configuration_en.md
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/lessweb/deepcode-cli/pull/90/{{ revealButtonHref }}
https://github.com/lessweb/deepcode-cli/pull/90/files#diff-f5f6cc8aa22f47faafd510f2402eb795ccd1e10c09f9b9640d788222ace08f95
https://github.com/lessweb/deepcode-cli/pull/90/files#diff-f5f6cc8aa22f47faafd510f2402eb795ccd1e10c09f9b9640d788222ace08f95
docs/notify.mdhttps://github.com/lessweb/deepcode-cli/pull/90/files#diff-512f2610d77d9baa8fca74587e688248009df856ea1af7cec1b76edc2068a014
View file https://github.com/Lellansin/deepcode-cli/blob/f9d2737f2737d195ab94e587d378c322f13b411a/docs/notify.md
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/lessweb/deepcode-cli/pull/90/{{ revealButtonHref }}
Please reload this pagehttps://github.com/lessweb/deepcode-cli/pull/90/files
Please reload this pagehttps://github.com/lessweb/deepcode-cli/pull/90/files
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.