Tolaria - แอป macOS โอเพนซอร์สสำหรับจัดการฐานความรู้ Markdown
(github.com/refactoringhq)- แอปเดสก์ท็อปสำหรับจัดการฐานความรู้ที่อิงไฟล์ Markdown ใช้ได้ทั้งกับการจัดการความรู้ส่วนบุคคลและการจัดระเบียบเอกสารบริษัทให้เหมาะกับบริบทของ AI รวมถึงใช้เก็บหน่วยความจำและขั้นตอนการทำงานของ OpenClaw·assistant
- เลือกสถาปัตยกรรมแบบ files-first, Git-first โดยบันทึกโน้ตเป็นไฟล์ Markdown ทั่วไป และจัดการแต่ละ vault เป็น git repository ทำให้ได้ทั้งความสามารถในการพกพาและประวัติเวอร์ชันโดยไม่ต้อง export แยก
- ยึดหลัก offline-first, zero lock-in ทำงานแบบออฟไลน์ได้เต็มรูปแบบโดยไม่ต้องพึ่งบัญชี การสมัครสมาชิก หรือคลาวด์ และถึงหยุดใช้งานก็ไม่สูญเสียข้อมูล
- ออกแบบตามแนวทาง AI-first but not AI-only รองรับ Claude Code และ Codex CLI และเครื่องมือ AI อื่นก็สามารถแก้ไข vault ที่อิงไฟล์ได้โดยตรง พร้อมมีไฟล์ AGENTS ให้ด้วย
- มีการเพิ่มฟีเจอร์ขึ้นมาจากกระบวนการแก้ปัญหาการใช้งานจริงของเวิร์กสเปซขนาดใหญ่ที่มีโน้ตมากกว่า 10,000 รายการ และเป็นแอปโอเพนซอร์สที่ใช้ Markdown มาตรฐานและ YAML frontmatter จึงช่วยรักษาทั้งความเป็นเจ้าของข้อมูลและความเข้ากันได้ในระยะยาว
เริ่มต้นใช้งาน
- ดาวน์โหลดแอปล่าสุดได้จาก latest release
- เมื่อเปิดใช้งานครั้งแรก สามารถ clone getting started vault ได้
- ภายใน vault นี้สามารถไล่ดูขั้นตอนการใช้งานทั้งหมดของแอปได้
โอเพนซอร์สและสภาพแวดล้อมการพัฒนาแบบโลคัล
- สร้างด้วย Tauri, React, TypeScript และมีคำแนะนำสำหรับการรันแบบโลคัลและการมีส่วนร่วมที่ GETTING-STARTED.md
-
ข้อกำหนดเบื้องต้น
- ต้องมี Node.js 20+, pnpm 8+, Rust stable
- สภาพแวดล้อมการพัฒนารองรับ macOS หรือ Linux
-
ไลบรารีที่ระบบต้องมีบน Linux
- หากใช้ Tauri 2 บน Linux ต้องมี WebKit2GTK 4.1 และ GTK 3
- Arch / Manjaro
- ต้องติดตั้ง
webkit2gtk-4.1,base-devel,curl,wget,file,openssl,appmenu-gtk-module,libappindicator-gtk3,librsvg
- ต้องติดตั้ง
- Debian / Ubuntu 22.04+
- ต้องติดตั้ง
libwebkit2gtk-4.1-dev,build-essential,curl,wget,file,libxdo-dev,libssl-dev,libayatana-appindicator3-dev,librsvg2-dev,libsoup-3.0-dev,patchelf
- ต้องติดตั้ง
- Fedora 38+
- ต้องติดตั้ง
webkit2gtk4.1-devel,openssl-devel,curl,wget,file,libappindicator-gtk3-devel,librsvg2-devel
- ต้องติดตั้ง
- MCP server ที่ bundle มาให้จะ spawn ไบนารี
nodeของระบบต่อไปบน Linux runtime- หากต้องการใช้เวิร์กโฟลว์ AI tooling ภายนอก ต้องติดตั้ง Node ผ่านตัวจัดการแพ็กเกจของดิสโทร
-
เริ่มแบบรวดเร็ว
- สามารถรัน mock mode แบบเบราว์เซอร์ได้ด้วย
pnpm install,pnpm dev - mock mode แบบเบราว์เซอร์จะเปิดที่
http://localhost:5173 - แอปเดสก์ท็อปแบบเนทีฟรันได้ด้วย
pnpm tauri dev
- สามารถรัน mock mode แบบเบราว์เซอร์ได้ด้วย
เอกสารทางเทคนิค
- ARCHITECTURE.md: การออกแบบระบบ เทคโนโลยีสแต็ก การไหลของข้อมูล
- ABSTRACTIONS.md: abstraction และโมเดลหลัก
- GETTING-STARTED.md: จุดเริ่มต้นสำหรับสำรวจโค้ดเบส
- ADRs: บันทึกการตัดสินใจด้านสถาปัตยกรรม
ความปลอดภัย
- หากพบประเด็นด้านความปลอดภัย จะรับรายงานแบบไม่เปิดเผยต่อสาธารณะตามวิธีที่ระบุไว้ใน SECURITY.md
ใบอนุญาต
- ใบอนุญาตคือ AGPL-3.0-or-later
- ชื่อและโลโก้ Tolaria ยังคงอยู่ภายใต้นโยบาย trademark policy ของโครงการ
2 ความคิดเห็น
โรดแมป https://tolaria.canny.io/
ความคิดเห็นจาก Hacker News
ชอบอันนี้มาก ให้ความรู้สึกเหมือนเอาสิ่งที่อยากได้จาก Obsidian มารวมกับปลั๊กอิน แล้วจัดให้เป็นแอปเดียวที่ออกแบบมาดีมาก
มีฟีดแบ็กด้วย อยากให้ยังคงเป็น โอเพนซอร์ส แต่หาวิธีสร้างรายได้เพื่อจะได้พัฒนานี่แบบฟูลไทม์ ถ้ามีเวอร์ชันแอปทางการแยกต่างหากก็ยินดีจ่าย
แล้วก็อยากให้หลีกเลี่ยง ฟีเจอร์ล้นเกิน ให้มาก ๆ ชอบดีไซน์เรียบง่ายของ Bear App มาก แต่สุดท้ายก็เลิกใช้เพราะจัดการไฟล์ markdown โดยตรงไม่ได้ แอปอย่าง Obsidian, Notion, Craft ชอบเพิ่มฟีเจอร์ไปเรื่อย ๆ แต่ที่นี่ดูเหมือนมีฟีเจอร์หลักครบแล้ว อยากให้โฟกัสแบบ Bear คือทำแกนหลักให้ดีมาก ๆ
ขอบคุณสำหรับฟีดแบ็กดี ๆ
พลาดโอกาสทำก่อนคุณไปแค่วันเดียวเอง ถึงอย่างนั้น Luca ทำได้ดีมาก เครื่องมือดูดีมากจนตอนนี้กำลังลองใช้อยู่เลย
ผมกำลังทำ Sig ที่ https://github.com/adamjramirez/sig-releases ซึ่งเห็นได้ชัดว่ามีส่วนที่ทับกันในเชิงโครงสร้าง ทั้ง macOS, markdown ล้วน, การจัดการเวอร์ชันด้วย git และการออกแบบเพื่อใช้เป็นคอนเท็กซ์ให้ AI agent
ความต่างอยู่ที่จุดเริ่มต้นของเวิร์กโฟลว์ Tolaria ดูเก่งในการจัดระเบียบความรู้ที่มีอยู่แล้ว ส่วน Sig พยายามแก้ปัญหาก่อนหน้านั้น คือจะดึงความรู้ในหัวออกมาเป็นไฟล์ได้อย่างไร จริง ๆ แล้วสิ่งที่กำหนดคุณภาพของผลลัพธ์จาก AI มักเป็นสิ่งที่ไม่ได้ถูกบันทึกไว้ เช่น การตัดสินใจที่เพิ่งเกิดขึ้นก่อนประชุม 5 นาที ข้อตกลงปากเปล่าที่ไม่มีการติดตาม หรือความหมายที่ผมตีความได้จริง ๆ ไม่ใช่แค่เนื้อหาบนผิวหน้าของบทสนทนา
การ capture ของ Sig มีสองชั้น 1) บันทึกข้อเท็จจริงก่อน 2) จากนั้นค่อยวางการตีความส่วนตัวทับลงไป ทั้งสองอย่างถูกเก็บเป็น markdown บนเครื่องของผมเอง พอพร้อมจะแชร์ไปยัง knowledge base ของทีมหรือ open brain ค่อยเลือกเผยแพร่อย่างชัดเจน ค่าเริ่มต้นคือเป็นส่วนตัว และทีมจะอ่านได้ก็ต่อเมื่อผมต้องการเท่านั้น
จะลองใช้แน่นอน
ทั้งคู่จำเป็น แต่รับหน้าที่คนละช่วงในเวิร์กโฟลว์
ช่วงนี้ดูเหมือนทุกคนกำลังสร้าง llm-wiki system ของตัวเองกันอยู่ ผมก็ทำอันหนึ่งเหมือนกัน และมีลิสต์รวมระบบ agent memory อื่น ๆ ไว้ก้อนใหญ่ในนั้นด้วย: https://zby.github.io/commonplace/agent-memory-systems/
เดี๋ยวจะเพิ่มของคุณเข้าไปทันที
วันนี้ก็เพิ่งสรุป wish list สำหรับระบบแบบนี้จากข้อมูลที่รวบรวมไว้: https://zby.github.io/commonplace/notes/designing-agent-memory-systems/
ถ้าร่วมมือกันได้ก็น่าสนใจมาก
มี MCP ฝังมาใน hosted SaaS เป็นค่าเริ่มต้น และยังมีคำสั่ง LLM แบบลำดับชั้น global/team/container/note รวมถึง shared note protocol สำหรับเวิร์กโฟลว์หลายเอเจนต์ของ Claude/ChatGPT ด้วย ถ้าต้องการ ผมช่วยเขียนหน้าแนะนำให้เข้ากับรูปแบบที่ต้องการได้
เอกสาร wishlist ที่ลิงก์มาก็ดีมาก และอยากร่วมทำงานกับอันนั้นด้วย
ไม่ได้เกี่ยวข้องอะไรนะ แค่กำลังทดสอบอยู่
ช่องว่างของการเก็บข้อมูลบนมือถือ เป็นเรื่องใหญ่จริง ๆ และก็เป็นเหตุผลหลักที่ทำให้เครื่องมือพวกนี้ยังไม่กลายเป็นแอปพื้นฐานในชีวิตประจำวัน
เวิร์กโฟลว์ที่ผมใช้แล้วเวิร์กคือ ตั้งค่า action ใน Drafts บน iOS ให้ append ลง inbox.md รายวันใน git repo แล้วซิงก์ด้วย Working Copy ไฟล์ Markdown คือแหล่งข้อมูลจริงเพียงหนึ่งเดียว และเครื่องมือบน macOS ไม่ว่าจะเป็น Tolaria หรือ Obsidian ก็อ่าน repo เดียวกันนี้ได้เลย โดยไม่มีขั้นตอนแปลง
ตอนเริ่มต้นอาจต้องจูนอะไรนิดหน่อย แต่ผลตอบแทนคุ้มมาก การเก็บข้อมูลบนมือถือกับการจัดระเบียบบนเดสก์ท็อปเกิดขึ้นบน ไฟล์เดียวกัน ไม่ใช่การคัดลอกวางหรือขั้นตอนซิงก์ระหว่างคนละแอป
ตั้งให้มัน append เข้า Daily Note ของ Obsidian ใน iCloud vault ได้ เลยเข้ากันดีมาก
ชอบตรงที่ไม่ต้องพึ่งบริการ third-party ด้วย
⁽¹⁾ https://apps.apple.com/us/app/bebop-quick-notes/id6477824795
ใช้เป็นที่เก็บสิ่งน่าสนใจที่เจอบนเว็บก่อนเป็นหลัก
https://github.com/momentmaker/to
ผมส่งทั้งลิงก์เว็บหรือลิงก์เครื่องมือที่อยากเก็บไว้ รวมถึง voice memo ที่อยากแปลงเป็นข้อความ
ถึงอย่างนั้นก็มีแผนจะทำเวอร์ชันมือถือแน่นอน
สุดท้ายก็มักกลับไปใช้ Apple Notes อยู่บ่อย ๆ แม้มันจะไม่ใช่ knowledge base หรือ markdown แบบเคร่งครัด แต่ซิงก์ข้ามอุปกรณ์ดีและพิมพ์บนมือถือสะดวก
เลยสงสัยว่าคุณเองมีความต้องการแบบนี้ไหม หรือปกติใช้วิธีไหนในการดูโน้ตบนมือถือ
โน้ตที่ต่อเนื่องยาว ๆ อย่างการติดตามการออกกำลังกายหรืออาหารก็ใส่หัววันที่แล้วเก็บต่อไปเรื่อย ๆ
วิธีนี้เหมาะกับผมมากกว่า Obsidian บนมือถือ และขั้นตอนคัดลอกวางเองก็ทำหน้าที่เป็นตัวกรองตามธรรมชาติด้วย
มีคำถามเรื่อง Markdown preview บน MacBook Pro อยากรู้ว่าจะทำให้ Finder แสดงผล markdown ใน quick preview หรือที่น่าจะเรียกว่า Quick Look ได้อย่างไร
ผมตั้งให้ไฟล์ .md เปิดด้วย IDE ตลอด แต่ในหน้าพรีวิวมันไม่เรนเดอร์ เลยรู้สึกติดนิดหน่อย ใน IDE ผมใช้ส่วนขยายสำหรับเรนเดอร์ md อยู่แล้ว เลยคิดว่าอาจมีผล หรืออาจเป็นอะไรอย่างการเรียกซ้ำที่ไม่ได้โผล่มาถึงระดับ preview extension ก็ได้ ยังไงก็อยากรู้ว่ามีวิธีแนะนำไหม
ชอบวิธีใช้ markdown ที่นี่มาก
พวกเราที่ https://voiden.md/ ก็ใช้แนวคิดแทบเหมือนกัน คือ offline-first, file-based, รองรับ git
ผมคิดว่ารูปแบบแบบนี้นี่แหละที่เอเจนต์จะใช้งานได้ดีพอสมควร
เราสร้างสิ่งนี้สำหรับ API และเป็นโอเพนซอร์สด้วย ดูได้ที่นี่: https://github.com/VoidenHQ/voiden
ช่วงนี้ผมใช้ octarine อยู่ ก่อนหน้านั้นก็ใช้ Obsidian มานานพอสมควร แต่ก็คิดว่าจะลองอันนี้แน่นอน
[1]: https://octarine.app
งานดีมาก มีฟีดแบ็กอยู่สองข้อ
ดูเหมือนตัวเอดิเตอร์จะยังไม่รองรับ code fence literal พิมพ์ ``` เพื่อสร้าง code block ไม่ได้
แล้วถ้าไฟล์ markdown ใหญ่มาก ๆ ประสิทธิภาพ ก็ยังไม่ค่อยดี
ผมกำลังทำ markdown editor สไตล์ Obsidian สำหรับผลิตภัณฑ์ AI knowledge base ของตัวเองอยู่: https://github.com/kenforthewin/atomic-editor
ผมเองก็กำลังทำชุด skill และ MCP เล็ก ๆ ที่เน้นดึง "atoms" ออกมาจาก quick brain dump ได้ง่ายขึ้น เหมือนกัน และมันก็ใช้ SQLite + SQLite-vec ด้วย
ปัญหาเรื่อง chunking ผมเลี่ยงด้วยการประกาศให้แต่ละ section เป็น chunk แล้วให้ LLM เขียนร่างใหม่เป็นโครงสร้างแบบแบ่ง section เพื่อให้แบ่ง chunk ได้ดี ผลก็คือมีข้อความซ้ำเยอะขึ้นและไม่มีพวกคำอย่าง "ตามที่อธิบายไว้ข้างต้น"
ผู้อ่านที่คาดไว้ไม่ใช่มนุษย์ แต่เป็นเอเจนต์ที่จะไปสร้างข้อความที่อ่านง่ายขึ้นสำหรับผู้อ่านแต่ละกลุ่ม ถ้าสมมติว่าผู้อ่านเป็น expert ผมคิดว่าต้นทุนในการผลิต atoms ที่ผ่านการตรวจทานจำนวนมากจะต่ำลงมาก
อยากลองเวิร์กโฟลว์นั้นร่วมกับ Atomic หรือ Tolaria มาก
ถ้าใช้เป็น viewer อย่างเดียวและไม่ได้ตั้งใจจะเพิ่มเอดิเตอร์อื่น ผมทำ https://mdview.io ไว้
มันเปิดไฟล์ Markdown แบบเรนเดอร์สวย ๆ ได้ และรองรับทั้งตารางกับ Mermaid ด้วย เหมาะทั้งสำหรับแชร์กับเพื่อนร่วมงานหรือเก็บไว้อ่านทีหลัง