code wiki / (root) / nx_companion_research_fetch.nx

nx_companion_research_fetch.nx source

↩ module page · 44 lines · 3395 B

1// nx_companion_research_fetch.nx -- bank the COMPANION-AI landscape (June 2026) into the Library so 2// nx_companion_census can grade ELDER AI against the REAL shipped bar -- Replika (the incumbent; its 3// 2023 ERP-removal + Italy Garante ban are the cautionary record), Character.ai, Pi (Inflection), 4// ElliQ (eldercare), Kindroid + Nomi (uncensored/memory-first rivals), the OPEN persona ecosystem 5// (SillyTavern + character-card spec + Piper local TTS = the voice bar), and the MEASURED EVIDENCE 6// (npj Mental Health Replika/loneliness study; De Freitas AI-companions-reduce-loneliness). 7// Operator 2026-07-02: Elder AI companion beyond Replika, full human experience, Claude = benchmark 8// only; "use the nishi ecosystem and team and apis. if they dont have the capabilities build it into 9// them." Sources DIVERSE + AUTHORITATIVE, grouped in descriptive SECTIONS, engine-composed (rule-15 10// DRY: ONE fetch loop), NOT tsv, NOT wikipedia-only. Run SOLO. 11// Composes nx_research_engine (proven sovereign TLS-1.3 fetch + gzip-guard + HTML->clean text). 12// expect_exit: 0 license_tier: ORIGINAL 13import "nx_research_engine.nx" 14const K_MAGIC_8388608: i64 = 8388608 15 16func main() -> i64 { 17 let store: *TrustStore = rf_init() 18 if (store as i64) == 0 { rf_puts("comp: trust store load failed\n" as *u8); return 1 } 19 rf_puts("CA roots="); rf_putn(trust_store_count(store)); rf_puts(" -- COMPANION-AI landscape (Jun 2026) -> Library\n" as *u8) 20 let cap: i64 = K_MAGIC_8388608 21 let out: *u8 = sys_mmap(cap) 22 var ok: i64 = 0 23 24 rf_section("COMMERCIAL closed companions (the shipped product bar Elder AI must exceed)" as *u8) 25 ok = ok + rf_fetch_bank("https://replika.com" as *u8, "comp_replika_product" as *u8, store, out, cap) 26 ok = ok + rf_fetch_bank("https://en.wikipedia.org/wiki/Replika" as *u8, "comp_replika_history" as *u8, store, out, cap) 27 ok = ok + rf_fetch_bank("https://character.ai" as *u8, "comp_characterai" as *u8, store, out, cap) 28 ok = ok + rf_fetch_bank("https://pi.ai" as *u8, "comp_pi_inflection" as *u8, store, out, cap) 29 ok = ok + rf_fetch_bank("https://elliq.com" as *u8, "comp_elliq_eldercare" as *u8, store, out, cap) 30 ok = ok + rf_fetch_bank("https://kindroid.ai" as *u8, "comp_kindroid_uncensored" as *u8, store, out, cap) 31 ok = ok + rf_fetch_bank("https://nomi.ai" as *u8, "comp_nomi_memory" as *u8, store, out, cap) 32 33 rf_section("OPEN persona ecosystem (persona-freedom bar + the local voice bar)" as *u8) 34 ok = ok + rf_fetch_bank("https://github.com/SillyTavern/SillyTavern" as *u8, "comp_sillytavern" as *u8, store, out, cap) 35 ok = ok + rf_fetch_bank("https://github.com/malfoyslastname/character-card-spec-v2" as *u8, "comp_charcard_spec" as *u8, store, out, cap) 36 ok = ok + rf_fetch_bank("https://github.com/rhasspy/piper" as *u8, "comp_piper_tts" as *u8, store, out, cap) 37 38 rf_section("MEASURED EVIDENCE (companionship outcomes -- the axis nobody ships benchmarks for)" as *u8) 39 ok = ok + rf_fetch_bank("https://www.nature.com/articles/s44184-023-00047-6" as *u8, "comp_loneliness_replika_study" as *u8, store, out, cap) 40 ok = ok + rf_fetch_bank("https://arxiv.org/abs/2407.19096" as *u8, "comp_ai_companions_loneliness" as *u8, store, out, cap) 41 42 rf_puts("COMP BANKED: "); rf_putn(ok); rf_puts(" / 12 (run nx_library_harvest_v2 to index -> queryable via nx_search_cli)\n" as *u8) 43 return 0 44}