ไฝ ็้ซ่ดจ้ๆๆฏ่ต่ฎฏๅคงๆฌ่ฅ๏ผๅ ผ้กพๆญ่็ฆปไธๆ้ๆฅ่ฏขใ
ๆฌๅฐไผๅ ยท ๆฐๆฎไธปๆ โโ ไฝ ็ๆฐๆฎๆฐธ่ฟๅฑไบไฝ ใ
ไธไธชไผ้ ใ็ฎๅใๅผบๅคง็ Go ่ฏญ่จๅฝไปค่กๅทฅๅ ท๏ผไธไธบ็จๅบๅ่ฎพ่ฎกใ้็จ LLM-Native ๆถๆๅๆฌๅฐไผๅ ็ๅฟต๏ผๆฏๆๅคๆบ API ้้ใๆบ่ฝ็ฝ้กตๆๅใLLM ๅ ๅฎนๅขๅผบใๆทฑๅบฆ็ ็ฉถๅๆๅๆฌๅฐ็ฅ่ฏๅบ RAG ้ฎ็ญใ
- ไธบไปไน้ๆฉ News4Coder๏ผ
- ๅ่ฝ็นๆง
- ๅฎๆนไฟกๆฏๆบ
- ๅฟซ้ๅผๅง
- ๆทฑๅบฆ็ ็ฉถ
- AI TUI ้ ่ฏปๅจ
- ๅฎๆดไฝฟ็จๆๅ
- ๅฝไปคๅ่
- ๆๆฏๆถๆ
- ๅผๅๆๅ
- ่ดจ้ไฟ่ฏ
- ๆ ้ๆ้ค
- ่ฎธๅฏ่ฏ
| ็นๆง | News4Coder | ไบ็ซฏ้ ่ฏปๅจ |
|---|---|---|
| ๆฐๆฎๅญๅจ | ๆฌๅฐ SQLite | ไบ็ซฏๆๅกๅจ |
| ่ดฆๅทๆณจๅ | ไธ้่ฆ | ๅฟ ้ |
| ้็งไฟๆค | ๆฐๆฎไธไธไผ | ๆๅกๅๅฏๆฅ็ |
| ๆๅกๅฏ็จๆง | ๆฐธไน ๅฏ็จ | ไพ่ตๆๅกๅ |
| ็ฆป็บฟไฝฟ็จ | ๅฎๅ จๆฏๆ | ๆ้ๆฏๆ |
| ๆฐๆฎๅฏผๅบ | ๅฎๅ จ่ช็ฑ | ๅ้ |
| AI ่ฝๅ | ๆฌๅฐ RAG + ๆทฑๅบฆ็ ็ฉถ | ไพ่ตไบ็ซฏ |
- โ ๆฌๅฐไผๅ : ๆๆๆฐๆฎๅญๅจๅจๆฌๅฐ SQLite๏ผๆ ้ไบ็ซฏ่ดฆๅท
- ๐ ๆฐๆฎไธปๆ: ไฝ ็้ ่ฏป่ฎฐๅฝใๆถ่ใ็ฌ่ฎฐๅฎๅ จๅฑไบไฝ
- ๐ ๅคๆบๆบ่ฝ้้: ็ดๆฅ่ฐ็จ HN/Reddit/V2EX API + Jina AI Reader
- ๐ค LLM ๅ ๅฎนๅขๅผบ: ่ชๅจ็ๆๆ่ฆใๆๆฏๆ ็ญพใ่ดจ้่ฏๅ๏ผ0-10๏ผ
- ๐ฏ ๆบ่ฝ็ญๅฑ: ๅบไบ่ดจ้่ฏๅๅ้ ่ฏปๅๅฅฝ๏ผ่ชๅจ็ๆใไปๆฅๅฟ ่ฏปใ
- ๐ฌ RAG ้ฎ็ญ: ๅบไบๆฌๅฐ็ฅ่ฏๅบๅ็ญ๏ผๆ ๆณจๅผ็จๆฅๆบ
- ๐ ๆ้ๆ็ดข: ๆฌๅฐ FTS5 ๅ จๆๆฃ็ดข๏ผ็ง็บงๅๅบ
- ๐ฌ Deep Research: ้ตๅพชไธไธ็ ็ฉถๆนๆณ่ฎบ็ๆทฑๅบฆๅๆ
- ่งๅ้ถๆฎต๏ผ่ชๅจ็ๆ็ ็ฉถๅ่ฎพๅๆ็ดข่ฎกๅ
- ๅคๆบ้้๏ผๆฌๅฐ็ฅ่ฏๅบ + ็ฝ็ปๆ็ดขๅนถ่ก
- ๅ ๅฎน่ทๅ๏ผJina Reader ๆๅๅฎๆด้กต้ขๅ ๅฎน
- ่ฏๆฎๆๅ๏ผๅ ณ้ฎๅฃฐๆใไบๅฎใๅผ็จ่ชๅจๆๅ
- ไบคๅ้ช่ฏ๏ผ่ฏๆฎๅ ณ่ๅๆ๏ผ่ฎก็ฎๅฏไฟกๅบฆ
- ไฟกๆฏ็ผบๅฃ่ฏๅซ๏ผๅ็ฐ็ ็ฉถไธญ็่ๅผฑ็ฏ่
- ๐บ AI ้
่ฏปๅจ: ๅๆ ๆพ็คบๆ็ซ ๅ่กจๅๆญฃๆ้ข่ง
- ๅทฆไพง๏ผๆ็ซ ๅ่กจ๏ผไธไธ้ฎ้ๆฉ๏ผ
- ๅณไพง๏ผๆ็ซ ้ข่ง๏ผๆ ้ขใURLใๆ่ฆใๆ ็ญพ๏ผ
- ๆฏๆๅฟซๆทๆไฝ๏ผๆ ่ฎฐๅทฒ่ฏปใๆถ่ใไธขๅผ
- ๐ ้ ่ฏป็ถๆๆต: unread / read / starred / archived / discarded
- ๐งน ๆญ่็ฆปๆฏๆ: ๆน้ๅฝๆกฃใ่ชๅจๆธ ็ใ่ฏญไนๅป้
- ๐ ๅฟซ้่พๅ ฅ: ็ฌ่ฎฐใๆ ็ญพใMarkdown ๅฏผๅบ
- ๐จ ไผ้ ่พๅบ: ๅฝฉ่ฒ็ป็ซฏ่พๅบ๏ผๆธ ๆฐๆ่ฏป
- ๐ ๅฟซ้ๅฏๅจ: ๅไบ่ฟๅถๆไปถ๏ผๆ ้้ขๅคไพ่ต
- ๐ ๆต่งๅจๆไปถ: ไธ้ฎไฟๅญ็ฝ้กตๅฐๆฌๅฐ็ฅ่ฏๅบ
news4coder ๅ ็ฝฎ 9 ไธช็ฒพ้้ซ่ดจ้ๆๆฏๆบ๏ผ่ฆ็ไธญ่ฑๆ๏ผ
| ๅซๅ | ๅ็งฐ | ้้ๆนๅผ | ่ฏดๆ |
|---|---|---|---|
hn |
Hacker News | Algolia API | YC ๆๆฏๆฐ้ป่ๅ |
github |
GitHub Blog | Jina Reader | GitHub ๅฎๆนๅๅฎข |
lobsters |
lobste.rs | HTML ่งฃๆ | ๅๅฅฝ็จๅบๅ็คพๅบ |
reddit |
Reddit r/programming | JSON API | Reddit ็ผ็จ็ญ้จ |
ruanyf |
้ฎไธๅณฐ็็ฝ็ปๆฅๅฟ | Jina Reader | ไธญๆๆๆฏๅๅฎขๆ ๆ |
coolshell |
้ ทๅฃณ CoolShell | Jina Reader | ๅทฆ่ณๆต่ๅญ็ๆๆฏๅๅฎข |
v2ex |
V2EX | API | ไธญๆๆๆฏ็คพๅบ |
infoq |
InfoQ ไธญๆ็ซ็ญ็นๆธ ๅ | ไธ็จๆๅๅจ | ๆๅ็ญ็นๆ็ซ ๅ่กจ |
ai |
InfoQ AI Briefs | ไธ็จๆๅๅจ | AI ๅคงๆจกๅๅณๆถ่ต่ฎฏ |
ไฝฟ็จ news4coder sources ๆฅ็ๅฎๆดๅ่กจ๏ผไนๅฏไปฅ็ดๆฅ็จๅซๅ่ทๅๅ
ๅฎน๏ผๅฆ news4coder hnใ
curl -sSL https://get.news4coder.dev | bash็กฎไฟๅทฒๅฎ่ฃ Go 1.25 ๆๆด้ซ็ๆฌ๏ผ
git clone https://github.com/news4coder/news4coder.git
cd news4coder
make buildgo install github.com/news4coder/news4coder@latest# ๆทปๅ shell ๅซๅ๏ผๆจ่๏ผ
echo "alias nn='news4coder'" >> ~/.zshrc
source ~/.zshrc็ผ่พ ~/.news4coder/config.json๏ผๅกซๅ
ฅไฝ ็ LLM API ไฟกๆฏ๏ผ
{
"llm": {
"base_url": "https://api.openai.com/v1",
"api_key": "sk-xxxxxxxx",
"model": "gpt-4o-mini",
"embedding_model": "text-embedding-3-small",
"enrich_max_tokens": 2000,
"ask_max_tokens": 4000
}
}ๆฏๆไปปไฝ OpenAI ๅ ผๅฎนๆฅๅฃ๏ผๅ ๆฌ Ollama ๆฌๅฐๆๅก๏ผ
http://localhost:11434/v1๏ผใ
# ๆฅ็ๅธฎๅฉ
news4coder --help
# ๆฅ็ๅฏ็จๅฎๆนๆบ
news4coder sources
# ๅๆญฅๆๆๅฎๆนๆบ
news4coder sync
# ๆฅ็ๅทฒๅๆญฅๆ็ซ
news4coder list --articlesnews4coder ็ๆทฑๅบฆ็ ็ฉถๅ่ฝ้ตๅพชไธไธ็ ็ฉถๆนๆณ่ฎบ๏ผๆจกๆ Qwen/DeepSeek Deep Research ็็ ็ฉถๆต็จใ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ 1. ่งๅ้ถๆฎต - ๅๆไธป้ข๏ผ็ๆ็ ็ฉถๅ่ฎพๅๆ็ดข่ฎกๅ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ 2. ๆ็ดข้ถๆฎต - ๅนถ่กๆ็ดขๆฌๅฐ็ฅ่ฏๅบ + ็ฝ็ป โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ 3. ๅ
ๅฎน่ทๅ - Jina Reader ๆๅ้่ฆ้กต้ขๅ
จๆ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ 4. ่ฏๆฎๆๅ - ๆๅๅ
ณ้ฎๅฃฐๆใไบๅฎใๅผ็จ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ 5. ๅๆ้ถๆฎต - ไบคๅ้ช่ฏใ่ฏๅซๆจกๅผใๅๆ็ผบๅฃ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ 6. ็ปผๅ้ถๆฎต - ็ๆ็ปๆๅๆฅๅ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
# ๅบๆฌ็ ็ฉถ
news4coder research "AI coding tools"
# ๆๅฎๅๆฐ
news4coder research "Rust vs Go" --sub-queries 8 --limit 30
# ไป
ๆฌๅฐ็ฅ่ฏๅบ๏ผไธ่ฟ่ก็ฝ็ปๆ็ดข๏ผ
news4coder research "WebAssembly" --no-web
# ่ฏฆ็ปๆฅๅ๏ผๅซ็ ็ฉถ่ฟฝ่ธช๏ผ
news4coder research "Kubernetes trends" --detailed
# JSON ่พๅบ
news4coder research "ๅพฎๆๅกๆถๆ" --json- ๆง่กๆ่ฆ: 2-3 ๅฅ่ฏๆฆๆฌๆ ธๅฟ่ถๅฟๅๅ็ฐ
- ๅ ณ้ฎๅ็ฐ: ๅธฆ่ฏๆฎๅผ็จๅ็ฝฎไฟกๅบฆ
- ๅค่งๅบฆๅๆ: ไธปๆต่ง็นใไบ่ฎฎ็ฆ็นใๆฐๅ ด่ถๅฟ
- ไฟกๆฏ็ผบๅฃๅๆ: ๆช่ฆ็ๆน้ขใๅผฑ่ฏๆฎ
- ๅ่ๆฅๆบ: ๅธฆๅฏไฟกๅบฆ่ฏๅๅๆฅๆบ็ฑปๅ
| ๅๆฐ | ้ป่ฎคๅผ | ่ฏดๆ |
|---|---|---|
--days |
30 | ๆ็ดขๆถ้ด่ๅด |
--limit |
20 | ๆๅคงๆฅๆบๆฐ้ |
--sub-queries |
5 | ๅญๆฅ่ฏขๆฐ้ |
--no-web |
false | ไป ไฝฟ็จๆฌๅฐ็ฅ่ฏๅบ |
--json |
false | JSON ๆ ผๅผ่พๅบ |
--detailed |
false | ่ฏฆ็ปๆฅๅ๏ผๅซ็ ็ฉถ่ฟฝ่ธช๏ผ |
ๅๆ ๆพ็คบๆ็ซ ๅ่กจๅๆญฃๆ้ข่ง๏ผๆไพๆด้ซๆ็้ ่ฏปไฝ้ชใ
news4coder ai tui
# ๆไฝฟ็จๅซๅ
nn ai tuiโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Articles (42) [Unread] โ Content Preview โ
โโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ โ [8.5] Article 1... โ Article Title โ
โ โ [9.0] Article 2... โ https://example.com โ
โ โ
[7.5] Article 3... โ โ
โ โ [6.5] Article 4... โ Source: Hacker News โ
โ โ Tags: golang, rust โ
โ โ Score: 8.5/10 โ
โ โ โ
โ โ LLM Summary or content...โ
โโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ j/k:โโ Navigate | Enter:Select | r:Read | q:Quit โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
| ้ฎ | ๅ่ฝ |
|---|---|
j / โ |
ไธ็งป |
k / โ |
ไธ็งป |
K / PgUp |
ๅไธ็ฟป้กต |
J / PgDn |
ๅไธ็ฟป้กต |
r |
ๆ ่ฎฐๅทฒ่ฏป |
s |
ๆถ่ |
d |
ไธขๅผ |
1 |
ๆพ็คบๅ จ้จ |
2 |
ไป ๆพ็คบๆช่ฏป |
3 |
ไป ๆพ็คบๆถ่ |
q |
้ๅบ |
# 1. ๅๆญฅๆๆๅฎๆนๆบ
news4coder sync
# 2. ๅฏนๆฐๆ็ซ ่ฟ่ก LLM ๅขๅผบ
news4coder enrich --limit 20
# 3. ๆฅ็ๆบ่ฝ็ญๅฑ็ไปๆฅๅฟ
่ฏป
news4coder curate --top 10# ๅฏนๆไธชๆๆฏไธป้ข่ฟ่กๆทฑๅบฆ็ ็ฉถ
news4coder research "AI coding tools evolution"
# ็ๆ่ฏฆ็ปๆฅๅ๏ผๅซ็ ็ฉถ่ฟ็จ่ฟฝ่ธช๏ผ
news4coder research "Rust in 2025" --detailed# ๅฏๅจ AI ้
่ฏปๅจ
news4coder ai tui
# ๅจ TUI ไธญๆต่งใๆ ่ฎฐใๆถ่ๆ็ซ news4coder ask "Go ๅ Rust ๅจๅนถๅๆจกๅไธๆไปไนๅทฎๅผ๏ผ"# 1. AI TUI ๆต่งๆ็ซ
news4coder ai tui
# 2. ไธบ้่ฆๆ็ซ ๆทปๅ ็ฌ่ฎฐ
news4coder note <article-id> "ๆ ธๅฟ่ง็น่ฎฐๅฝ..."
# 3. ๆทปๅ ่ชๅฎไนๆ ็ญพ
news4coder tag <article-id> "golang,concurrency"| ๅฝไปค | ่ฏดๆ | ็คบไพ |
|---|---|---|
sync |
ๅๆญฅๅฎๆนๆบๅฐๆฌๅฐๆฐๆฎๅบ | news4coder sync --source hn |
enrich |
LLM ๅ ๅฎนๅขๅผบ | news4coder enrich --limit 10 |
curate |
ๆบ่ฝ็ญๅฑ | news4coder curate --top 10 |
ask |
RAG ้ฎ็ญ | news4coder ask "้ฎ้ข" |
research |
ๆทฑๅบฆ็ ็ฉถ | news4coder research "ไธป้ข" |
ai tui |
AI ้ ่ฏปๅจ | news4coder ai tui |
inbox |
TUI ๆถไปถ็ฎฑ | news4coder inbox |
| ๅฝไปค | ่ฏดๆ | ็คบไพ |
|---|---|---|
list |
ๅๅบ่ฎข้ /ๆ็ซ | news4coder list -a --status unread |
read |
ๆ ่ฎฐๅทฒ่ฏป | news4coder read 1 2 3 |
star |
ๆถ่ | news4coder star 42 |
discard |
ไธขๅผ | news4coder discard 5 6 |
archive |
ๆน้ๅฝๆกฃ | news4coder archive |
note |
ๆทปๅ ็ฌ่ฎฐ | news4coder note 42 "็ฌ่ฎฐ" |
tag |
ๆทปๅ ๆ ็ญพ | news4coder tag 42 "tag1,tag2" |
| ๅฝไปค | ่ฏดๆ | ็คบไพ |
|---|---|---|
search |
ๅ จๆๆ็ดข | news4coder search "golang" |
stats |
่ฎข้ ๅฅๅบทๅบฆ | news4coder stats |
export |
ๅฏผๅบๆ็ซ | news4coder export --status starred |
cleanup |
ๆธ ็ๆงๆ็ซ | news4coder cleanup |
| ๅฝไปค | ่ฏดๆ |
|---|---|
hn |
็ดๆฅ่ทๅ Hacker News |
infoq |
็ดๆฅ่ทๅ InfoQ ็ญ็น |
v2ex |
็ดๆฅ่ทๅ V2EX ็ญ้จ |
github |
็ดๆฅ่ทๅ GitHub Blog |
reddit |
็ดๆฅ่ทๅ Reddit ็ญ้จ |
inspire |
HN ๆฐไบงๅ็ตๆ |
news4coder/
โโโ cmd/ # CLI ๅฝไปคๅฎไน๏ผCobra๏ผ
โ โโโ root.go # ๆ นๅฝไปค + ๅฎๆนๆบๅซๅๅค็
โ โโโ sync.go # ๅๆญฅๆ็ซ
โ โโโ enrich.go # LLM ๅ
ๅฎนๅขๅผบ
โ โโโ curate.go # ๆบ่ฝ็ญๅฑ
โ โโโ ask.go # RAG ้ฎ็ญ
โ โโโ research.go # ๆทฑๅบฆ็ ็ฉถ
โ โโโ ai.go # AI TUI ๅฝไปค
โ โโโ inbox.go # TUI ๆถไปถ็ฎฑ
โ โโโ ...
โโโ internal/ # ๅ
้จๆจกๅ
โ โโโ article/ # ๆ็ซ ๆจกๅ
โ โโโ config/ # ้
็ฝฎ็ฎก็
โ โโโ crawler/ # ๅคๆบๅ
ๅฎน้้ๅจ
โ โโโ curator/ # ๆบ่ฝ็ญๅฑ
โ โโโ db/ # SQLite + FTS5
โ โโโ deep_research/ # ๆทฑๅบฆ็ ็ฉถๅผๆ
โ โโโ dedup/ # ่ฏญไนๅป้
โ โโโ enricher/ # LLM ๅ
ๅฎนๅขๅผบ
โ โโโ llm/ # LLM ็ปไธๅฎขๆท็ซฏ
โ โโโ official/ # ๅฎๆนไฟกๆฏๆบๆณจๅ่กจ
โ โโโ rag/ # RAG ้ฎ็ญ
โ โโโ search/ # DuckDuckGo ๆ็ดข
โ โโโ tui/ # TUI ็ปไปถ
โ โ โโโ split_reader.go # ๅๆ ้
่ฏปๅจ
โ โ โโโ ...
โ โโโ i18n/ # ๅฝ้
ๅ
โโโ browser-extension/ # ๆต่งๅจๆไปถ
โ โโโ manifest.json # Chrome Extension Manifest V3
โ โโโ popup.html/js/css # ๅผน็ช็้ข
โ โโโ background.js # Service Worker
โ โโโ content.js # ๅ
ๅฎน่ๆฌ
โโโ web/ # Web ๅฎฃไผ ้กต้ข
โโโ main.go # ็จๅบๅ
ฅๅฃ
โโโ go.mod # ไพ่ต็ฎก็
โโโ Makefile # ๆๅปบ่ๆฌ
โโโ .golangci.yml # Linter ้
็ฝฎ
โโโ .editorconfig # ็ผ่พๅจ้
็ฝฎ
โโโ .pre-commit-config.yaml # Pre-commit ้ฉๅญ
โโโ .github/workflows/ # CI/CD ้
็ฝฎ
โโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโ
โ ๅฎๆนๆบ โโโโโโถโ Crawler/ โโโโโโถโ SQLite โ
โ (HN/V2EX็ญ) โ โ Fetcher โ โ (db) โ
โโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโ โโโโโโโโฌโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโ
โผ
โโโโโโโโโโโโโโโโโโโ
โ Enricher โ
โ (LLM ๆ่ฆ/ๆ ็ญพ) โ
โโโโโโโโโโฌโโโโโโโโโ
โ
โโโโโโโโโโโโโโโผโโโโโโโโโโโโโโ
โผ โผ โผ
โโโโโโโโโโโ โโโโโโโโโโโ โโโโโโโโโโโ
โ Curator โ โ RAG โ โ Deep โ
โ(ๆบ่ฝๆจ่)โ โ(็ฅ่ฏ้ฎ็ญ)โ โ Researchโ
โโโโโโฌโโโโโ โโโโโโฌโโโโโ โโโโโโฌโโโโโ
โ โ โ
โโโโโโโโโโโโโโโดโโโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโ
โ TUI / CLI โ
โ (็จๆทไบคไบ) โ
โโโโโโโโโโโโโโโ
# ็ผ่ฏ
make build
# ่ทจๅนณๅฐ็ผ่ฏ
make release
# ่ฟ่กๆต่ฏ
make test
# ไปฃ็ ่ดจ้ๆฃๆฅ
make quality้กน็ฎๅ ๅซๅฎๆด็่ดจ้ๆฃๆฅๆต็จ๏ผ
| ๆฃๆฅ้กน | ๅฝไปค | ่ฏดๆ |
|---|---|---|
| ๆ ผๅผๅ | make fmt |
gofmt ๆฃๆฅ |
| ้ๆๅๆ | make vet |
go vet ๆฃๆฅ |
| Lint | make lint |
golangci-lint ๆฃๆฅ |
| ๅๅ ๆต่ฏ | make test |
go test -race |
| ่ฆ็็ | make test-coverage |
่ฆ็็ โฅ60% |
| ๅฎๅ จๆซๆ | make security |
gosec ๆฃๆฅ |
ๅฎ่ฃ pre-commit ๅ๏ผๆฏๆฌกๆไบคไผ่ชๅจ่ฟ่ก่ดจ้ๆฃๆฅ๏ผ
pip install pre-commit
pre-commit install- ๅจ
cmd/ไธๆฐๅปบxxx.go - ๅฎไน
xxxCmdๅนถไฝฟ็จrootCmd.AddCommand(xxxCmd) - ๅจ
init()ไธญๆณจๅ Flag
- ๅจ
internal/official/registry.go็registerDefaultSources()ไธญๆณจๅ - ๅฆ้ไธ็จ้้ๅจ๏ผๅจ
internal/crawler/factory.go็NewCrawler()ไธญๅฎ็ฐๅๆฏ
้กน็ฎไฝฟ็จ GitHub Actions ่ฟ่กๆ็ปญ้ๆ๏ผ
- Format Check: gofmt ๆ ผๅผๅๆฃๆฅ
- Build: ๅคๅนณๅฐ็ผ่ฏ้ช่ฏ
- Test: ่ทจๅนณๅฐๆต่ฏ๏ผUbuntu/macOS/Windows ร Go 1.25/1.26๏ผ
- Lint: golangci-lint ้ๆๆฃๆฅ
- Security: gosec ๅฎๅ จๆซๆ
- Coverage: ่ฆ็็้จๆงๆฃๆฅ๏ผโฅ60%๏ผ
- ้ตๅพช Effective Go ่ง่
- ไฝฟ็จ
gofmtๆ ผๅผๅไปฃ็ - ๅฏ็จ golangci-lint ่งๅ๏ผerrcheck, gosec, gosimple, govet, ineffassign, staticcheck, typecheck, unused, golint, misspell, nakedret, prealloc, exportloopref
- ไฝฟ็จ Go Modules ็ฎก็ไพ่ต
- ้่ฟ Dependabot ่ชๅจๆดๆฐไพ่ต
- ๅทฅๅ
ทไพ่ตๅฃฐๆๅจ
go.mod็toolๆไปคไธญ
A: News4Coder ๅๆใๆฌๅฐไผๅ ใๅใๆฐๆฎไธปๆใ็ๅฟต๏ผ
- โ ้็ง: ๆ ้่ดฆๅท๏ผๆฐๆฎไธไธไผ ไบ็ซฏ
- โ ๆฐธไน ๅฏ็จ: ไธๅๆๅกๅๅ้ญๅฝฑๅ
- โ ๅฏๅฏผๅบ: ้ๆถๅคไปฝๆ่ฟ็งป
- โ ็ฆป็บฟไฝฟ็จ: ๆฒกๆ็ฝ็ปไน่ฝ่ฎฟ้ฎๅทฒๅๆญฅๅ ๅฎน
A: ๅฏไปฅใไธ้ ็ฝฎ LLM ไน่ฝ๏ผ
- ๅๆญฅๅ้ ่ฏปๆ็ซ
- ็ฎก็้ ่ฏป็ถๆ
- ๆ็ดขๆฌๅฐๆ็ซ
- ไฝฟ็จ AI TUI ้ ่ฏปๅจ
ไฝๆ ๆณไฝฟ็จ๏ผ
enrich- ่ชๅจ็ๆๆ่ฆๅๆ ็ญพcurate- ๆบ่ฝ็ญๅฑask- RAG ้ฎ็ญresearch- ๆทฑๅบฆ็ ็ฉถ
A: ๅๅณไบๅๆญฅ็ๆ็ซ ๆฐ้ใ้ๅธธ๏ผ
- 1000 ็ฏๆ็ซ ็บฆ 10-20 MB
- ๅ ๅซๅ จๆ็ดขๅผ๏ผๆฏๆๅฟซ้ๆ็ดข
A:
- ๆฃๆฅ็ฝ็ป่ฟๆฅ
- ๅฐ่ฏๅ็ฌๅๆญฅ่ฏฅๆบ๏ผ
news4coder sync --source <alias> - ๅฏนไบ API ๆบ๏ผๅฏ่ฝๆฏ rate limit๏ผ็จๅๅ่ฏ
News4Coder ๆไพ Chrome ๆต่งๅจๆไปถ๏ผๆฏๆไธ้ฎไฟๅญ็ฝ้กตๅฐๆฌๅฐ็ฅ่ฏๅบใ
- Chrome Web Store๏ผๅณๅฐไธ็บฟ๏ผ
- ๅผๅ่
ๆจกๅผๆฌๅฐๅ ่ฝฝ๏ผ
- ๆๅผ
chrome://extensions/ - ๅผๅฏๅณไธ่งใๅผๅ่ ๆจกๅผใ
- ็นๅปใๅ ่ฝฝๅทฒ่งฃๅ็ๆฉๅฑ็จๅบใ
- ้ๆฉ
browser-extension/็ฎๅฝ
- ๆๅผ
- ไธ้ฎไฟๅญๅฝๅ็ฝ้กตๅฐๆฌๅฐๆฐๆฎๅบ
- ๅณ้ฎ่ๅไฟๅญ้กต้ขๆ้พๆฅ
- ๅฟซๆท้ฎ
Ctrl+Shift+Nๅฟซ้ไฟๅญ - ่ชๅฎไนๆฌๅฐ API ๅฐๅ
้กน็ฎๅ
ๅซ่ชๅจๅๅๅธๅทฅไฝๆต๏ผ.github/workflows/publish-extension.yml๏ผใ้
็ฝฎ GitHub Secrets ๅๅณๅฏไฝฟ็จใ
CONTRIBUTING.md- ่ดก็ฎๆๅCHANGELOG.md- ็ๆฌๅๆด่ฎฐๅฝSECURITY.md- ๅฎๅ จๆฟ็ญCODE_OF_CONDUCT.md- ็คพๅบ่กไธบๅๅ
MIT License
ไบซๅไฝ ็ๆฌๅฐไผๅ
ๆๆฏ้
่ฏปไฝ้ช๏ผ ๐
ไฝ ็ๆฐๆฎ๏ผๆฐธ่ฟๅฑไบไฝ ใ