โอเพนซอร์สAGPL-3.0อ่านได้ทุกบรรทัด
แอป iOS, Android และเว็บฉบับเต็มภายใต้ AGPL-3.0-or-later ไม่ต้องมีบัญชี ไม่ต้องสมัครสมาชิก และไม่มีการส่งข้อมูลใดกลับมาหาเรา เปิดอ่านโค้ด แก้ไข หรือโฮสต์เองได้ตามต้องการ
$ git clone https://github.com/oriveo/oriveo.git $ cd oriveo
# Web · Node 22.22+ $ cd web && npm install $ npm run dev:app # localhost:3001
# iOS · Xcode 26, iOS 18+ $ open ios/Oriveo/Oriveo.xcodeproj
# Android · JDK 21 + Android SDK $ cd android && ./gradlew :app:assembleDebug
ในคลังโค้ดไม่มีไฟล์สำเร็จรูป ทั้ง APK และ .ipa รุ่นคอมมูนิตี้เป็นซอร์สโค้ดที่คุณต้องบิลด์เอง
ในคลังโค้ดมีอะไรบ้าง
iOS · SwiftUI
หน้าจอเขียนด้วย SwiftUI ส่วนแสดงบทสนทนาใช้ UIKit และจัดเก็บข้อมูลด้วย GRDB เปิดโปรเจกต์ใน Xcode 26 เลือก Team ของคุณเองในหัวข้อ Signing ก็รันบนมือถือของคุณได้
Android · Compose
Jetpack Compose, Room, Koin, Ktor และ OkHttp เมื่อมี JDK 21 และ Android SDK แล้ว สั่ง assembleDebug ครั้งเดียวก็ได้แอปที่ติดตั้งได้
Web · Next.js
Next.js App Router, React, Zustand และ TypeScript เป็นส่วนเดียวของโปรเจกต์ที่มีเซิร์ฟเวอร์ และเซิร์ฟเวอร์นี้ไม่เก็บทั้ง API key และข้อความ
macOS · อยู่ระหว่างพัฒนา
แอป macOS แบบเนทีฟกำลังอยู่ระหว่างพัฒนาและจะอยู่ในไดเรกทอรีนี้ ส่วนเลเยอร์สื่อสารกับ API ที่เขียนด้วย Swift ซึ่งเป็นฐานของแอปนั้นเขียนเสร็จและมีชุดทดสอบครอบคลุมแล้ว
ถ้าแอปทั้งสามต่างเขียนวิธี “เรียกผู้ให้บริการ” ของตัวเอง ไม่นานพฤติกรรมก็จะเริ่มไม่ตรงกัน shared/ จึงบันทึกพฤติกรรมนั้นไว้เป็นข้อมูล: capabilityrecipe กำหนดวิธีประกอบคำขอ model-contracts กำหนดว่าแอปทำอะไรได้บ้าง test-fixtures คือคำตอบจริงที่บันทึกไว้ และ OriveoProviderKit คือแกนสื่อสารกับ API ที่เขียนด้วย Swift 6.1 แอปทั้งสามตรวจสอบกับ JSON ชุดเดียวกัน
โค้ดชุดเดียว ใช้งานได้สองแบบ
แอปทั้งสามมาจากซอร์สโค้ดเดียวกัน ที่ต่างกันคือบัญชี ซิงค์คลาวด์ และโมเดลที่เราเป็นผู้จ่ายค่าใช้งาน
| ความสามารถ | รุ่นคอมมูนิตี้ | Oriveo ทางการ |
|---|---|---|
| ซอร์สโค้ด | AGPL-3.0-or-later | รุ่นเชิงพาณิชย์ |
| แชตด้วย API key ของผู้ให้บริการที่คุณมีเอง | รองรับ | รองรับ |
| Relay และเซิร์ฟเวอร์โมเดลที่รันในเครื่อง | รองรับ | รองรับ |
| โน้ต โฟลเดอร์ Skills และไฟล์แนบ | รองรับ | รองรับ |
| ติดตามค่าใช้จ่ายบนอุปกรณ์ | รองรับ | รองรับ |
| บัญชี | บัญชี Oriveo | |
| การจัดเก็บ | บันทึกไว้ในเครื่อง ส่งออกและกู้คืนด้วยตนเอง | บันทึกไว้ในเครื่องโดยค่าเริ่มต้น และเปิดซิงค์คลาวด์ข้ามอุปกรณ์ได้ถ้าต้องการ |
| Usage Insights และการแจ้งเตือนงบประมาณ | รองรับ | |
| โมเดลที่ Oriveo เป็นผู้จ่ายค่าใช้งาน (Oriveo AI / Oriveo Free) | รองรับ | |
| การวิเคราะห์การใช้งานและรายงานข้อขัดข้อง | รองรับ |
รุ่นคอมมูนิตี้ใช้ตัวระบุแอปที่ขึ้นต้นด้วย ai.oriveo.community จึงติดตั้งคู่กับแอปจากสโตร์ในเครื่องเดียวกันได้ โดยไม่ใช้ keychain หรือข้อมูลในเครื่องร่วมกัน
ร่วมพัฒนาได้หลายทาง
เลือก issue ที่สนใจ
ถ้าเป็นงานที่ใหญ่กว่าการแก้บั๊ก ให้เปิด issue คุยกันก่อน การถกเรื่องแนวทางใน issue เสียแรงน้อยกว่ามาเห็นต่างกันตอนรีวิวโค้ดมาก
รายงานช่องโหว่แบบส่วนตัว
ปัญหาด้านความปลอดภัยโปรดอย่าเปิดเป็น issue สาธารณะ ให้แจ้งผ่านระบบรายงานช่องโหว่แบบส่วนตัวของ GitHub หรืออีเมลถึง [email protected] โดยใส่คำว่า SECURITY ในหัวเรื่อง เราจะตอบกลับภายในไม่กี่วัน
เพิ่มภาษา
แอปรองรับ 16 ภาษา และ README ก็มีครบ 16 ภาษาเช่นกัน ถ้าเจอคำแปลที่อ่านไม่เป็นธรรมชาติ หรืออยากเพิ่มภาษาใหม่ ส่ง pull request มาได้เลย
โปรด clone คลังโค้ดทั้งหมด แอปทั้งสามอ่านไฟล์ contract fixtures ใน shared/ จากโฟลเดอร์รากของคลังโค้ด หาก clone แบบตื้น (shallow) ชุดทดสอบจะไม่ผ่าน
ถ้านำไปเปิดให้บริการ โค้ดที่คุณแก้ก็ต้องเปิดเผยด้วย
สำหรับแอปที่อาจต้องเก็บ API key ของคุณ นี่คือเงื่อนไขที่เหมาะสมที่สุด ไม่ว่าใครจะนำเวอร์ชันใดไปโฮสต์ คุณก็อ่านได้ว่าเวอร์ชันนั้นทำอะไรจริง ๆ การบิลด์ไว้ใช้เองไม่ได้รับผลกระทบใด ๆ และโค้ดที่ส่งมาร่วมพัฒนาจะอยู่ภายใต้เงื่อนไข AGPL-3.0-or-later เดียวกัน
ทุกโมเดล แอปเดียว key ของคุณ
เริ่มฟรี · ไม่ต้องใช้บัตรเครดิต · ไม่บวกเพิ่ม