Mentions

Conversations linking to GitHub, newest first. Times are UTC.

Mentions by source

X

6,286
Nov 13, 23:00Nov 14, 23:00

Bluesky

1,871
Nov 14, 01:00Nov 15, 01:00
Nov 14, 00:00Nov 15, 00:00
Nov 14, 00:00Nov 15, 00:00
Nov 14, 01:00Nov 15, 01:00
Nov 14, 01:00Nov 15, 01:00
Nov 14, 00:00Nov 15, 00:00
Nov 14, 01:00Nov 15, 01:00
Oct 14, 21:00Oct 15, 21:00

Delayed · data through Oct 15, 21:00 UTC

DEV

1,125
Nov 14, 01:00Nov 15, 01:00
Nov 14, 01:00Nov 15, 01:00
Nov 13, 21:00Nov 14, 21:00
Nov 14, 01:00Nov 15, 01:00
Oct 28, 01:00Oct 29, 01:00

Delayed · data through Oct 29, 01:00 UTC

Nov 8, 11:00Nov 9, 11:00

Delayed · data through Nov 9, 11:00 UTC

Nov 14, 01:00Nov 15, 01:00

Latest posts

  1. X@LifeMa221082 · 1 like · 16 views

    pixelfx 메모📝 불꽃, 폭발, 번개, 포털 같은 픽셀아트 이펙트 244개를 코드로 모아 둔 오픈소스. 캐릭터가 기 모으고 때리고 맞고 물러나는 동작까지 같이 들어 있는 게 좀 신기한 듯😳😳 스프라이트 시트로 뽑아서 Unity·Godot에서도 쓸 수 있다고 함. MIT 라이선스👍 patch-gg/pixelfx t.co

  2. X@realanysad · 2 likes · 60 views

    @brxd154 @News_Funkin literally everybody has access to it, it's not exclusive github.com/FunkinCrew/Funkin/tree/preview/public-…

  3. Redditu/FiNiX_Forge · r/IMadeThis · 1 point · 4 comments

    I made Android Auto support for my game-inspired navigation app, Waypoint Android Auto dashboard in two Waypoint worlds, captured in the Desktop Head Unit on a simulated London route. I shared Waypoint here earlier as a phone navigation app with 27 game-inspired map worlds. Android Auto was the clearest feature request, so I built a car interface for version 1.1.0. The dashboard follows the world selected on the phone. It now shows the route line, moving position, next turn, remaining distance and ETA, with search, saved/recent destinations and map controls in the car UI. I also switched guidance progress and rerouting to Ferrostar. I captured the new interface in Android Auto's Desktop Head Unit on a simulated London journey; the screenshots are in the updated README. I still need to validate it during a real drive. Maps and routes need internet, and live traffic, offline routing and lane guidance are not included. Waypoint is free and open source. The signed 1.1.0 APK, source and release notes are here: github.com/the-geeky-couldron/waypoint/releases/t… If you have an Android Auto display, I'd love to hear how the route line, follow camera and controls feel on it. Specific problems or suggestions would help me decide what to fix next. Waypoint on phone and Android Auto in the Old West world; public London demonstration captures.

  4. X@kkamegawa · 2 likes · 97 views

    @okazuki @Shrkm1204 kkamegawa/dotfiles 私のdotfiles 。多分.NET/Azure/VS開発者にはほとんど不自由ない、はず。

  5. X@zfdang · 1 like · 38 views

    @ruterfu 推荐语音输入,结合语音搭子+蓝牙遥控器,几乎可以脱离键盘了:zfdang/voice-input-buddy

  6. How I built a music companion that plays in your own culture Live demo: reach-6o5x.onrender.com (press Guided tour, top right) · Code: soroorgh93/reach A grandmother may forget a name. She rarely forgets the song she fell in love to. That's the idea behind Reach, a music companion I built for people living with dementia, autism or hearing loss. You tell it who someone loves and what they need (sleep, calm, focus or memory), and it plays a calm session made from their music, in their culture and language. The problem: everyone gets the same "calm playlist" Music measurably helps with anxiety, pain and sleep. Cochrane reviews have found it again and again. But in hospitals and sleep apps, everyone gets the same calm playlist: Enya, Max Richter, rain sounds. A Persian grandmother who loves Hayedeh, a student who loves Jay Chou and a dancer who loves David Guetta all get the same list. They switch it off. Music only works as medicine if people keep listening, and people keep listening to music that is theirs. I also tried simply asking a chatbot. I asked a language model for Persian sleep songs. It named eight, and none of them could be found in the Deezer or iTunes catalogues. It invented them. How Reach works !Three things, one session A small council of agents builds each session: - Listener understands what you typed or said - Taste asks Qloo's taste graph for the artists closest to your favourites - Clinician picks an evidence-graded protocol (for sleep: a tempo that starts at your pace and slows down) - Composer writes the timeline: tempo, a gentle pulse, a safe volume - Guardian checks the safety rules (child limits, hearing, never while driving) - Gate refuses if the evidence or the Qloo data is missing !How a session is made Qloo is the heart of it, not a lookup at the end For a sleep session for someone who loves Hayedeh, the Taste agent asks Qloo for artists that fit both her taste and the texture of sleep: GET /v2/insights ?filter.type=urn:entity:artist &signal.interests.entities=<Hayedeh's Qloo id> &filter.tags=urn:tag:genre:music:ambient,...acoustic,...classical,...piano &filter.exclude.tags=...metal,...edm,...hip_hop,...punk A second call adds signal.location.query=Tehran, the city MusicBrainz says Hayedeh comes from, to get a pool from her own culture. Reach uses eight Qloo surfaces in total: entity search, artist insights, the location signal, tag insights, demographics, podcasts, movies and TV (the visual mode for deaf users), and places and books (a gentle next step "after the music"). Without Qloo, Reach refuses to make a session. Only entity ids, tag ids, an age bucket and a city are ever sent to Qloo. Never the words "I can't sleep." The hardest part: culture, not country My first version put Turkish pop singers in a Persian listener's sleep playlist, because Qloo ranked them higher. One early reply even said "from Iran", which felt wrong to the person testing it. So I removed country labels entirely and replaced them with measurement: 1. the language of each artist's own song titles 2. where MusicBrainz says the artist is from 3. slots shared out per favourite, so a Shakira + Aznavour fan gets both Latin and French picks 4. diversity, so it isn't ten songs by one singer There's no country table anywhere in the code. The same logic now serves Persian, Mandarin, Afrobeats, K-pop and Mexican listeners. A sand plate in three.js !A 3D sand plate drawing a new pattern for each frequency My favourite part: a 3D plate where each frequency (2 Hz deep sleep up to 40 Hz) draws its own figure in sand, like a Chladni plate. The sand gathers where the plate stays still. Each band also shows its evidence grade, and the experimental ones (like 40 Hz) say so clearly. It listens back !One hand, one face With the camera turned on, Reach reads a face and one hand on the device with face-api.js and MediaPipe. Nothing is uploaded. Two fingers play the next song, a thumbs-down changes it, and a smile moves the mood dial. For people who can't hear, Reach switches to a visual protocol: a breathing light at six breaths a minute, vibration on the beat, and captioned films that Qloo picks from their taste. Does it beat a plain chatbot? I gave the same ten listeners to three systems: a generic playlist, a language model (llama 3.1 8B) and Reach, all using live Qloo. !Reach vs a chatbot | | Reach | Plain chatbot | Generic playlist | |---|---|---|---| | Songs that really exist | 100% | 60% | 100% | | From the person's own culture | 92% | 89% | 36% | | Calm when they need calm | 96% | 70% | 100% | The chatbot invented four songs in ten. The generic playlist was real and calm, but the same for everyone. Ten people is a small test: it shows a pattern, not a clinical result. What I learned Cultural intelligence isn't a nice extra for health; it's what makes people keep listening. And only real taste data, not a model's guess, can tell you what that music is. Reach is a wellbeing tool, not a medical device. Every claim in the app shows its evidence grade and source. Built with Python and Starlette on the server, three.js and Web Audio in the browser, Qloo, MusicBrainz, Deezer and iTunes previews, face-api.js, MediaPipe, and fourteen languages (Persian and Arabic right to left). It's one Docker container on Render, with no account and no database. --- Try it: reach-6o5x.onrender.com. Start with the Guided tour. Code (MIT): soroorgh93/reach I'd love your feedback, especially if you work in care or music therapy. 💛

  7. YouTubeVijayakumar J · YouTube description · 1 comment · 12 views

    Why 99% Of People Overpay For AI 🤫 #Shorts Your coding setup is missing this secret repository. Did you know you can build a powerful ChatGPT alternative for just one hundred dollars? Andrej Karpathy created nanochat, a trending Python repository that proves you don't need a multi billion dollar 📰 Source: karpathy/nanochat 🎯 Lens: Open Source Purist | ID: b25aab8a 🚀 Daily AI News → t.me 💬 WhatsApp → whatsapp.com ⚠️ AI DISCLOSURE: AI-assisted production (voiceover narration, AI-generated conceptual visuals). All editorial decisions — topic selection, research, scriptwriting, analysis — by VJ. No deepfakes or synthetic depictions of real individuals. #AndrejKarpathy #GitHub #OpenAI #ChatGPT #OpenSource #Nanochat #Shorts #MindBlowing #TechGadgetsInventions #OfPeople [ar] لماذا يدفع 99% من الناس مبالغ طائلة دون داعٍ مقابل الذكاء الاصطناعي 🤫 #Shorts بيئة البرمجة لديك تفتقر إلى هذا المستودع السري. هل تعلم أنه بإمكانك بناء بديل قوي لـ ChatGPT بمئة دولار فقط؟ أنشأ أندريه كارباثي nanochat، وهو مستودع بايثون رائج يُثبت أنك لست بحاجة إلى مليارات الدولارات. 📰 المصدر: karpathy/nanochat 🎯 عدسة: مُحبّ المصادر المفتوحة | المعرّف: b25aab8a 🚀 أخبار الذكاء الاصطناعي اليومية → t.me 💬 واتساب → whatsapp.com ⚠️ إفصاح عن الذكاء الاصطناعي: إنتاج مدعوم بالذكاء الاصطناعي (التعليق الصوتي، الصور المفاهيمية المُولّدة بالذكاء الاصطناعي). جميع القرارات التحريرية - اختيار الموضوع، البحث، كتابة السيناريو، التحليل - من قِبل VJ. لا توجد صور مُزيّفة أو صور مُصطنعة لأشخاص حقيقيين. أندريه كارباثي جيت هاب الذكاء الاصطناعي المفتوح تشات جي بي تي المصادر المفتوحة نانو تشات أفلام قصيرة مذهل اختراعات وأدوات تقنية عن الناس [bn] কেন ৯৯% মানুষ এআই (AI)-এর পেছনে অতিরিক্ত খরচ করে 🤫 #Shorts আপনার কোডিং সেটআপে এই গোপন রিপোজিটরিটি নেই। আপনি কি জানেন যে আপনি মাত্র একশ ডলারে একটি শক্তিশালী ChatGPT বিকল্প তৈরি করতে পারেন? আন্দ্রেজ কার্পাথি তৈরি করেছেন ন্যানোচ্যাট (nanochat), একটি ট্রেন্ডিং পাইথন রিপোজিটরি যা প্রমাণ করে যে এর জন্য আপনার বহু বিলিয়ন ডলারের প্রয়োজন নেই। 📰 উৎস: karpathy/nanochat 🎯 লেন্স: ওপেন সোর্স পিউরিস্ট | আইডি: b25aab8a 🚀 দৈনিক এআই সংবাদ → t.me 💬 হোয়াটসঅ্যাপ → whatsapp.com ⚠️ এআই ডিসক্লোজার: এআই-সহায়তায় নির্মিত (ভয়েসওভার ন্যারেটিভ, এআই-নির্মিত ধারণামূলক ভিজ্যুয়াল)। সমস্ত সম্পাদকীয় সিদ্ধান্ত — বিষয় নির্বাচন, গবেষণা, স্ক্রিপ্ট লেখা, বিশ্লেষণ — ভিজে (VJ) দ্বারা গৃহীত। কোনো ডিপফেক বা বাস্তব ব্যক্তির কৃত্রিম চিত্রায়ন নেই। #আন্দ্রেজকারপাথি #গিটহাব #ওপেনএআই #চ্যাটজিপিটি #ওপেনসোর্স #ন্যানোচ্যাট #শর্টস #মনমুগ্ধকর #প্রযুক্তিগ্যাজেটেরআবিষ্কার #মানুষের [de-DE] Warum 99 % der Leute zu viel für KI bezahlen 🤫 #Shorts Deiner Programmierumgebung fehlt dieses geheime Repository. Wusstest du, dass du eine leistungsstarke ChatGPT-Alternative für nur 100 Dollar entwickeln kannst? Andrej Karpathy hat nanochat entwickelt, ein trendiges Python-Repository, das beweist, dass man kein Milliarden-Dollar-Budget braucht. 📰 Quelle: karpathy/nanochat 🎯 Lens: Open Source Purist | ID: b25aab8a 🚀 Tägliche KI-News → t.me 💬 WhatsApp → whatsapp.com ⚠️ KI-Offenlegung: KI-gestützte Produktion (Voiceover, KI-generierte Visualisierungen). Alle redaktionellen Entscheidungen – Themenauswahl, Recherche, Drehbuch, Analyse – wurden von VJ getroffen. Keine Deepfakes oder synthetischen Darstellungen realer Personen. #AndrejKarpathy #GitHub #OpenAI #ChatGPT #OpenSource #Nanochat #Shorts #MindBlowing #TechGadgetsInventions #OfPeople [es-US] Por qué el 99% de las personas paga de más por la IA 🤫 #Shorts A tu configuración de codificación le falta este repositorio secreto. ¿Sabías que puedes crear una potente alternativa a ChatGPT por solo cien dólares? Andrej Karpathy creó nanochat, un repositorio de Python que está de moda y que demuestra que no necesitas una inversión multimillonaria. 📰 Fuente: karpathy/nanochat 🎯 Lente: Open Source Purist | ID: b25aab8a 🚀 Noticias diarias de IA → t.me 💬 WhatsApp → whatsapp.com ⚠️ AVISO SOBRE IA: Producción asistida por IA (narración en off, imágenes conceptuales generadas por IA). Todas las decisiones editoriales —selección de temas, investigación, guion, análisis— fueron tomadas por VJ. No se utilizaron deepfakes ni representaciones sintéticas de personas reales. #AndrejKarpathy #GitHub #OpenAI #ChatGPT #OpenSource #Nanochat #Shorts #MindBlowing #TechGadgetsInventions #OfPeople [fr-FR] Pourquoi 99 % des gens paient trop cher pour l'IA 🤫 #Shorts Il manque ce dépôt secret à votre configuration de code. Saviez-vous qu'il est possible de créer une alternative performante à ChatGPT pour seulement 100 dollars ? Andrej Karpathy a créé nanochat, un dépôt Python très populaire qui prouve qu'il n'est pas nécessaire de dépenser des milliards. 📰 Source : karpathy/nanochat 🎯 Lens : Open Source Purist | ID : b25aab8a 🚀 Actualités quotidiennes sur l'IA → t.me 💬 WhatsApp → whatsapp.com ⚠️ AVERTISSEMENT : Production assistée par IA (voix off, visuels conceptuels générés par IA). Toutes les décisions éditoriales (choix des sujets, recherche, écriture du script, analyse) ont été prises par VJ. Aucun deepfake ni représentation synthétique de personnes réelles. #AndrejKarpathy #GitHub #OpenAI #ChatGPT #OpenSource #Nanochat #Shorts #Époustouflant #InventionsTechnologiques #DesGens [hi] क्यों 99% लोग AI के लिए ज्यादा पैसे देते हैं 🤫 #Shorts आपके कोडिंग सेटअप में यह गुप्त रिपॉजिटरी मौजूद नहीं है। क्या आप जानते हैं कि आप मात्र सौ डॉलर में एक शक्तिशाली ChatGPT विकल्प बना सकते हैं? आंद्रेज कार्पेथी ने nanochat बनाया है, जो एक लोकप्रिय पायथन रिपॉजिटरी है और यह साबित करता है कि इसके लिए आपको अरबों डॉलर खर्च करने की ज़रूरत नहीं है। 📰 स्रोत: karpathy/nanochat 🎯 लेंस: ओपन सोर्स प्यूरिस्ट | आईडी: b25aab8a 🚀 दैनिक AI समाचार → t.me 💬 व्हाट्सएप → whatsapp.com ⚠️ AI खुलासा: AI-सहायता प्राप्त निर्माण (वॉइसओवर कथन, AI-जनित वैचारिक दृश्य)। सभी संपादकीय निर्णय — विषय चयन, शोध, पटकथा लेखन, विश्लेषण — VJ द्वारा लिए गए हैं। कोई डीपफेक या वास्तविक व्यक्तियों के कृत्रिम चित्रण नहीं हैं। #AndrejKarpathy #GitHub #OpenAI #ChatGPT #OpenSource #Nanochat #Shorts #MindBlowing #TechGadgetsInventions #OfPeople [id] Alasan 99% Orang Membayar Terlalu Mahal untuk AI 🤫 #Shorts Pengaturan pengkodean Anda kehilangan repositori rahasia ini. Tahukah Anda bahwa Anda dapat membangun alternatif ChatGPT yang ampuh hanya dengan seratus dolar? Andrej Karpathy menciptakan nanochat, sebuah repositori Python yang sedang tren yang membuktikan bahwa Anda tidak memerlukan dana miliaran dolar. 📰 Sumber: karpathy/nanochat 🎯 Lens: Open Source Purist | ID: b25aab8a 🚀 Berita AI Harian → t.me 💬 WhatsApp → whatsapp.com ⚠️ PENGUNGKAPAN AI: Produksi yang dibantu AI (narasi sulih suara, visual konseptual yang dihasilkan AI). Semua keputusan editorial — pemilihan topik, riset, penulisan skrip, analisis — oleh VJ. Tidak ada deepfake atau penggambaran sintetis dari individu nyata. #AndrejKarpathy #GitHub #OpenAI #ChatGPT #OpenSource #Nanochat #Shorts #MindBlowing #TechGadgetsInventions #OfPeople [it] Perché il 99% delle persone paga troppo per l'IA 🤫 #Shorts Alla tua configurazione di programmazione manca questo repository segreto. Sapevi che puoi creare una potente alternativa a ChatGPT per soli cento dollari? Andrej Karpathy ha creato nanochat, un repository Python di tendenza che dimostra che non servono miliardi di dollari. 📰 Fonte: karpathy/nanochat 🎯 Lens: Open Source Purist | ID: b25aab8a 🚀 Notizie quotidiane sull'IA → t.me 💬 WhatsApp → whatsapp.com ⚠️ INFORMATIVA SULL'IA: Produzione assistita dall'IA (voce narrante, elementi visivi concettuali generati dall'IA). Tutte le decisioni editoriali - selezione degli argomenti, ricerca, sceneggiatura, analisi - sono a cura di VJ. Nessun deepfake o rappresentazione sintetica di persone reali. #AndrejKarpathy #GitHub #OpenAI #ChatGPT #OpenSource #Nanochat #Shorts #MindBlowing #TechGadgetsInventions #OfPeople [iw] למה 99% מהאנשים משלמים יותר מדי על בינה מלאכותית 🤫 #Shorts במערך הקידוד שלך חסר מאגר סודי זה. האם ידעת שאתה יכול לבנות אלטרנטיבה חזקה ל-ChatGPT תמורת מאה דולר בלבד? אנדריי קרפטי יצר את nanochat, מאגר Python פופולרי שמוכיח שאתה לא צריך מיליארדי דולרים 📰 מקור: karpathy/nanochat 🎯 עדשה: Open Source Purist | ID: b25aab8a 🚀 חדשות בינה מלאכותית יומיות → t.me 💬 WhatsApp → whatsapp.com ⚠️ גילוי נאות של בינה מלאכותית: הפקה בסיוע בינה מלאכותית (קריינות, ויזואליה קונספטואלית שנוצרה על ידי בינה מלאכותית). כל ההחלטות העריכה - בחירת נושא, מחקר, כתיבת תסריטים, ניתוח - על ידי VJ. ללא זיופים עמוקים או תיאורים סינתטיים של אנשים אמיתיים. #אנדרייקרפטי #גיטהאב #פתוחAI #צ'אטGPT #קוד פתוח #ננוצ'אט #מכנסיים קצרים #מדהימים #המצאותגאדג'טיםטכנולוגיים #שלאנשים [ja] 99%の人がAIに払いすぎている理由 🤫 #Shorts あなたのコーディング環境には、この秘密のリポジトリが欠けています。 たった100ドルで強力なChatGPT代替ツールを構築できることをご存知ですか?Andrej Karpathy氏が開発した、数十億ドル規模のプロジェクトが不要であることを証明した、話題のPythonリポジトリ「nanochat」をご紹介します。 📰 出典:karpathy/nanochat 🎯 レンズ:Open Source Purist | ID:b25aab8a 🚀 毎日のAIニュース → t.me 💬 WhatsApp → whatsapp.com ⚠️ AIに関する開示:AIによる制作(ナレーション、AI生成の概念的なビジュアル)が含まれています。編集上の決定(トピックの選定、調査、脚本作成、分析)はすべてVJが行っています。ディープフェイクや実在の人物の合成描写は一切使用していません。 #AndrejKarpathy #GitHub #OpenAI #ChatGPT #OpenSource #Nanochat #Shorts #MindBlowing #TechGadgetsInventions #OfPeople [ko] 대부분의 사람들이 AI에 돈을 낭비하는 이유 🤫 #Shorts 당신의 코딩 환경에는 이 비밀 저장소가 빠져 있습니다. 단 100달러로 강력한 ChatGPT 대안을 만들 수 있다는 사실을 알고 계셨나요? Andrej Karpathy는 수십억 달러가 필요하지 않다는 것을 증명하는 인기 있는 Python 저장소인 nanochat을 개발했습니다. 📰 출처: karpathy/nanochat 🎯 렌즈: 오픈 소스 순수주의자 | ID: b25aab8a 🚀 일일 AI 뉴스 → t.me 💬 WhatsApp → whatsapp.com ⚠️ AI 고지: AI 지원 제작(내레이션, AI 생성 컨셉 이미지). 모든 편집 결정(주제 선정, 조사, 스크립트 작성, 분석)은 VJ가 직접 진행합니다. 딥페이크나 실제 인물의 합성 이미지는 사용하지 않습니다. #안드레이카르파티 #깃허브 #오픈AI #챗GPT #오픈소스 #나노챗 #반바지 #놀라운 #기술기기발명품 #사람들의발명품 [ml] 99% ആളുകൾ എന്തിനാണ് AI-ക്കായി അമിതമായി പണം മുടക്കുന്നത് 🤫 #Shorts നിങ്ങളുടെ കോഡിംഗ് സജ്ജീകരണത്തിൽ ഈ രഹസ്യ ശേഖരം ഇല്ല. വെറും നൂറ് ഡോളറിന് ശക്തമായ ഒരു ChatGPT ബദൽ നിർമ്മിക്കാൻ കഴിയുമെന്ന് നിങ്ങൾക്കറിയാമോ? ആൻഡ്രെജ് കാർപതി നാനോചാറ്റ് സൃഷ്ടിച്ചു, ഇത് നിങ്ങൾക്ക് കോടിക്കണക്കിന് ഡോളർ ആവശ്യമില്ലെന്ന് തെളിയിക്കുന്ന ഒരു ട്രെൻഡിംഗ് പൈത്തൺ ശേഖരമാണ് 📰 ഉറവിടം: karpathy/nanochat 🎯 ലെൻസ്: ഓപ്പൺ സോഴ്‌സ് പ്യൂരിസ്റ്റ് | ഐഡി: b25aab8a 🚀 ഡെയ്‌ലി AI വാർത്തകൾ → t.me 💬 WhatsApp → whatsapp.com ⚠️ AI വെളിപ്പെടുത്തൽ: AI- സഹായത്തോടെയുള്ള നിർമ്മാണം (വോയ്‌സ്‌ഓവർ വിവരണം, AI- ജനറേറ്റുചെയ്‌ത ആശയപരമായ ദൃശ്യങ്ങൾ). എല്ലാ എഡിറ്റോറിയൽ തീരുമാനങ്ങളും - വിഷയ തിരഞ്ഞെടുപ്പ്, ഗവേഷണം, സ്ക്രിപ്റ്റ് റൈറ്റിംഗ്, വിശകലനം - VJ. യഥാർത്ഥ വ്യക്തികളുടെ ഡീപ്ഫേക്കുകളോ സിന്തറ്റിക് ചിത്രീകരണങ്ങളോ ഇല്ല. #ആന്ദ്രെജ് കാർപതി #ഗിറ്റ്ഹബ് #ഓപ്പൺഎഐ #ചാറ്റ്ജിപിടി #ഓപ്പൺസോഴ്‌സ് #നാനോചാറ്റ് #ഷോർട്ട്സ് #മനസ്സിനെ തളർത്തുന്ന #ടെക്‌ഗാഡ്‌ജെറ്റുകൾകണ്ടുപിടുത്തങ്ങൾ #ജനങ്ങളുടെ [nl-NL] Waarom 99% van de mensen te veel betaalt voor AI 🤫 #Shorts Je code-setup mist deze geheime repository. Wist je dat je een krachtig alternatief voor ChatGPT kunt bouwen voor slechts honderd dollar? Andrej Karpathy creëerde nanochat, een populaire Python-repository die bewijst dat je geen miljarden dollars nodig hebt. 📰 Bron: karpathy/nanochat 🎯 Lens: Open Source Purist | ID: b25aab8a 🚀 Dagelijks AI-nieuws → t.me 💬 WhatsApp → whatsapp.com ⚠️ AI-VERKLARING: AI-ondersteunde productie (voice-over, AI-gegenereerde conceptuele visuals). Alle redactionele beslissingen — onderwerpselectie, onderzoek, scriptschrijven, analyse — door VJ. Geen deepfakes of synthetische afbeeldingen van echte personen. #AndrejKarpathy #GitHub #OpenAI #ChatGPT #OpenSource #Nanochat #Shorts #MindBlowing #TechGadgetsInventions #OfPeople [pl] Dlaczego 99% ludzi przepłaca za AI 🤫 #Shorts W Twoim systemie kodowania brakuje tego tajnego repozytorium. Czy wiesz, że możesz stworzyć potężną alternatywę dla ChatGPT za jedyne sto dolarów? Andrej Karpathy stworzył nanochat, popularne repozytorium Pythona, które udowadnia, że ​​nie potrzebujesz wielomiliardowego kapitału. 📰 Źródło: karpathy/nanochat 🎯 Obiektyw: Open Source Purist | ID: b25aab8a 🚀 Daily AI News → t.me 💬 WhatsApp → whatsapp.com ⚠️ INFORMACJA O SZTUCZNEJ INTELIGENCJI: Produkcja wspomagana przez sztuczną inteligencję (narracja lektorska, wizualizacje koncepcyjne generowane przez sztuczną inteligencję). Wszystkie decyzje redakcyjne — wybór tematu, research, pisanie scenariusza, analiza — należą do VJ. Żadnych deepfake'ów ani sztucznych wizerunków prawdziwych osób. #AndrejKarpathy #GitHub #OpenAI #ChatGPT #OpenSource #Nanochat #Shorts #MindBlowing #TechGadgetsInventions #OfPeople [pt-BR] Por que 99% das pessoas pagam caro demais por IA 🤫 #Shorts Seu setup de programação está sem este repositório secreto. Você sabia que pode criar uma alternativa poderosa ao ChatGPT por apenas cem dólares? Andrej Karpathy criou o nanochat, um repositório Python em alta que prova que você não precisa de bilhões de dólares. 📰 Fonte: karpathy/nanochat 🎯 Lens: Open Source Purist | ID: b25aab8a 🚀 Notícias diárias sobre IA → t.me 💬 WhatsApp → whatsapp.com ⚠️ AVISO SOBRE IA: Produção assistida por IA (narração em off, visuais conceituais gerados por IA). Todas as decisões editoriais — seleção de tópicos, pesquisa, roteiro, análise — foram tomadas por VJ. Sem deepfakes ou representações sintéticas de pessoas reais. #AndrejKarpathy #GitHub #OpenAI #ChatGPT #OpenSource #Nanochat #Shorts #MindBlowing #TechGadgetsInventions #OfPeople [ru] Почему 99% людей переплачивают за ИИ 🤫 #Shorts В вашей системе кодирования отсутствует этот секретный репозиторий. Знаете ли вы, что можете создать мощную альтернативу ChatGPT всего за сто долларов? Андрей Карпати создал nanochat, популярный репозиторий на Python, доказывающий, что вам не нужны многомиллиардные инвестиции. 📰 Источник: karpathy/nanochat 🎯 Lens: Open Source Purist | ID: b25aab8a 🚀 Ежедневные новости об ИИ → t.me 💬 WhatsApp → whatsapp.com ⚠️ РАСКРЫТИЕ ИНФОРМАЦИИ ОБ ИИ: Производство с использованием ИИ (озвучивание, концептуальные визуализации, созданные ИИ). Все редакционные решения — выбор темы, исследования, написание сценария, анализ — принимаются виджеем. Никаких дипфейков или синтетических изображений реальных людей. #АндрейКарпати #GitHub #OpenAI #ChatGPT #OpenSource #Nanochat #Shorts #MindBlowing #TechGadgetsInventions #OfPeople [ta] ஏன் 99% மக்கள் AI-க்கு அதிகப்படியாக பணம் செலுத்துகிறார்கள் 🤫 #Shorts உங்கள் கோடிங் அமைப்பில் இந்த இரகசிய ரெபாசிட்டரி இல்லை. வெறும் நூறு டாலர்களுக்கு ஒரு சக்திவாய்ந்த ChatGPT மாற்றீட்டை உங்களால் உருவாக்க முடியும் என்பது உங்களுக்குத் தெரியுமா? பல பில்லியன் டாலர்கள் தேவையில்லை என்பதை நிரூபிக்கும், பிரபலமாகி வரும் பைதான் ரெபாசிட்டரியான நானோசாட்டை (nanochat) ஆண்ட்ரேஜ் கர்பதி உருவாக்கியுள்ளார். 📰 ஆதாரம்: karpathy/nanochat 🎯 லென்ஸ்: ஓப்பன் சோர்ஸ் ப்யூரிஸ்ட் | ஐடி: b25aab8a 🚀 தினசரி AI செய்திகள் → t.me 💬 வாட்ஸ்அப் → whatsapp.com ⚠️ AI வெளிப்படுத்தல்: AI உதவியுடன் கூடிய தயாரிப்பு (குரல்வழி வர்ணனை, AI-ஆல் உருவாக்கப்பட்ட கருத்தியல் காட்சிகள்). தலைப்புத் தேர்வு, ஆராய்ச்சி, திரைக்கதை எழுதுதல், பகுப்பாய்வு என அனைத்து தலையங்க முடிவுகளும் VJ-ஆல் எடுக்கப்பட்டவை. டீப்ஃபேக்குகள் அல்லது உண்மையான நபர்களின் செயற்கையான சித்தரிப்புகள் எதுவும் இல்லை. #ஆண்ட்ரேஜ்கர்பதி #கிட்ஹப் #ஓப்பன்ஏஐ #சாட்ஜிபிடி #ஓப்பன்சோர்ஸ் #நானோசாட் #குறும்படங்கள் #வியக்கவைக்கும் #தொழில்நுட்பக்கருவிகள்கண்டுபிடிப்புகள் #மக்களைப்பற்றி [te] 99% మంది ప్రజలు AI కోసం ఎందుకు ఎక్కువ డబ్బు ఖర్చు చేస్తున్నారు 🤫 #Shorts మీ కోడింగ్ సెటప్‌లో ఈ రహస్య రిపోజిటరీ లేదు. కేవలం వంద డాలర్లకే మీరు ఒక శక్తివంతమైన ChatGPT ప్రత్యామ్నాయాన్ని నిర్మించగలరని మీకు తెలుసా? ఆండ్రేజ్ కర్పాతీ నానోచాట్‌ను సృష్టించారు, ఇది ట్రెండింగ్‌లో ఉన్న ఒక పైథాన్ రిపోజిటరీ. దీని ద్వారా మీకు కొన్ని బిలియన్ డాలర్ల పెట్టుబడి అవసరం లేదని రుజువవుతోంది. 📰 మూలం: karpathy/nanochat 🎯 లెన్స్: ఓపెన్ సోర్స్ ప్యూరిస్ట్ | ID: b25aab8a 🚀 రోజువారీ AI వార్తలు → t.me 💬 వాట్సాప్ → whatsapp.com ⚠️ AI ప్రకటన: AI-సహాయంతో నిర్మాణం (వాయిస్‌ఓవర్ కథనం, AI- రూపొందించిన భావనాత్మక దృశ్యాలు). అన్ని సంపాదకీయ నిర్ణయాలు — అంశం ఎంపిక, పరిశోధన, స్క్రిప్ట్ రచన, విశ్లేషణ — VJ ద్వారా తీసుకోబడ్డాయి. ఇందులో డీప్‌ఫేక్‌లు లేదా నిజమైన వ్యక్తుల కృత్రిమ చిత్రణలు లేవు. #ఆండ్రెజ్‌కర్పతి #గిట్‌హబ్ #ఓపెన్‌ఏఐ #చాట్‌జీపీటీ #ఓపెన్‌సోర్స్ #నానోచాట్ #షార్ట్స్ #మైండ్‌బ్లోయింగ్ #టెక్‌గ్యాడ్జెట్స్‌ఆవిష్కరణలు #ప్రజల [uk] Чому 99% людей переплачують за ШІ 🤫 #Shorts У вашому коді відсутній цей секретний репозиторій. Чи знаєте ви, що можете створити потужну альтернативу ChatGPT лише за сто доларів? Андрій Карпатій створив nanochat, трендовий репозиторій Python, який доводить, що вам не потрібні багатомільярдні гроші. 📰 Джерело: karpathy/nanochat 🎯 Об'єктив: Open Source Purist | ID: b25aab8a 🚀 Щоденні новини про ШІ → t.me 💬 WhatsApp → whatsapp.com ⚠️ РОЗКРИТТЯ ІНФОРМАЦІЇ ПРО ШІ: Виробництво за допомогою ШІ (закадровий голос, концептуальні візуальні ефекти, згенеровані ШІ). Усі редакційні рішення — вибір теми, дослідження, написання сценарію, аналіз — від VJ. Без діпфейків або штучних зображень реальних осіб. #АндрійКарпатій #GitHub #OpenAI #ChatGPT #OpenSource #Nanochat #КороткіРолики #Неймовірні #ВинаходиТехноґаджетів #Людей

  8. X@laogeai · 7 views

    想躺床上玩电脑游戏,串流盒子几百块,云游戏按月收费还随时下架游戏。 foundation-sunshine 装在主机上,手机/平板接 Moonlight 直接玩,硬件编码低延迟,不过第三方服务器。 alkaidlab/foundation-sunshine

  9. YouTubeVijayakumar J · YouTube description · 1 comment · 16 views

    Why Your AI Coding Agent Suffers From Severe Amnesia 📲 Direct Links to Communities: 🚀 Telegram → t.me 💬 WhatsApp → whatsapp.com ━━━━━━━━━━━━━━━━━━━━━━ 💬 PINNED DISCUSSION: Are you still re-explaining your project to your AI assistant every morning, or have you tried local memory tools? ━━━━━━━━━━━━━━━━━━━━━━ 👆 What's your take? Drop your thoughts in the comments! 📌 CHAPTERS: 00:00 — The 5 PM Amnesia Trap 00:55 — Persistent State Across Sessions 01:50 — The Markdown Wiki Breakthrough ━━━━━━━━━━━━━━━━━━━━━━ 📚 SOURCES: 🔗 GitHub Trending: Graphify-Labs/graphify — Turn any codebase, (GitHub): Graphify-Labs/graphify 🔗 GitHub Trending: thedotmack/claude-mem — Persistent Context (GitHub): thedotmack/claude-mem 🔗 GitHub Trending: akitaonrails/ai-memory — Solution for long (GitHub): akitaonrails/ai-memory ━━━━━━━━━━━━━━━━━━━━━━ 💼 LinkedIn: linkedin.com ⚠️ AI DISCLOSURE: AI-assisted production (narration, visuals). All editorial decisions and chaptered analysis human-driven by VJ. No realistic synthetic media of real people. #Thedotmack #Akitaonrails #GitHub #Graphify #ClaudeMem #AiMemory #KnowledgeGraph #SQLite #ASTParsing #AICodingAgent #DeveloperTools #OpenSource #Coding #AICoding #AgentSuffers [ar] لماذا يعاني وكيل الذكاء الاصطناعي الخاص بك من فقدان ذاكرة حاد؟ 📲 روابط مباشرة إلى المنتديات: 🚀 تيليجرام → t.me 💬 واتساب → whatsapp.com ━━━━━━━━━━━━━━━━━━━━━━ 💬 نقاش مُثبّت: هل ما زلت تُعيد شرح مشروعك لمساعدك الذكي كل صباح، أم جرّبت أدوات الذاكرة المحلية؟ 💬 ━━━━━━━━━━━━━━━━━━━━━━ 👆 ما رأيك؟ شاركنا أفكارك في التعليقات! 📌 الفصول: 00:00 — فخ النسيان في الساعة الخامسة مساءً 00:55 — الحالة المستمرة عبر الجلسات 01:50 — اكتشاف جديد في ويكي Markdown ━━━━━━━━━━━━━━━━━━━━━━ 📚 المصادر: 🔗 GitHub Trending: Graphify-Labs/graphify — تحويل أي قاعدة بيانات، (GitHub): Graphify-Labs/graphify 🔗 GitHub Trending: thedotmack/claude-mem — السياق المستمر (GitHub): thedotmack/claude-mem 🔗 الأكثر رواجًا على GitHub: akitaonrails/ai-memory — حلٌّ لمشكلة الذاكرة الطويلة (GitHub): akitaonrails/ai-memory ━━━━━━━━━━━━━━━━━━━━━━ 💼 LinkedIn: linkedin.com ⚠️ إفصاح بشأن الذكاء الاصطناعي: تم استخدام الذكاء الاصطناعي في الإنتاج (التعليق الصوتي، الصور). جميع القرارات التحريرية والتحليلات التفصيلية تتم يدويًا بواسطة VJ. لا توجد وسائط اصطناعية واقعية لأشخاص حقيقيين. ذا دوت ماك أكيتا أون ريلز جيت هاب جرافيفاي كلود ميم ذاكرة الذكاء الاصطناعي مخطط المعرفة إس كيو لايت تحليل شجرة بناء الجملة المجردة وكيل ترميز الذكاء الاصطناعي أدوات المطورين مفتوح المصدر ترميز ترميز الذكاء الاصطناعي معاناة الوكيل [bn] আপনার এআই কোডিং এজেন্ট কেন গুরুতর অ্যামনেশিয়ায় ভোগে 📲 কমিউনিটিতে সরাসরি যোগদানের লিঙ্ক: 🚀 টেলিগ্রাম → t.me 💬 হোয়াটসঅ্যাপ → whatsapp.com ━━━━━━━━━━━━━━━━━━━━━ 💬 পিন করা আলোচনা: আপনি কি এখনও প্রতিদিন সকালে আপনার এআই অ্যাসিস্ট্যান্টকে আপনার প্রজেক্টটি পুনরায় ব্যাখ্যা করছেন, নাকি লোকাল মেমোরি টুল ব্যবহার করে দেখেছেন? ━━━━━━━━━━━━━━━━━━━━━━ 👆 আপনার মতামত কী? কমেন্টে জানান! 📌 অধ্যায়সমূহ: ০০:০০ — বিকেল ৫টার বিস্মৃতির ফাঁদ ০০:৫৫ — সেশন জুড়ে স্থায়ী অবস্থা ০১:৫০ — মার্কডাউন উইকির যুগান্তকারী আবিষ্কার ━━━━━━━━━━━━━━━━━━━━━━ 📚 উৎসসমূহ: 🔗 গিটহাব ট্রেন্ডিং: Graphify-Labs/graphify — যেকোনো কোডবেসকে কার্যকর করুন, (গিটহাব): Graphify-Labs/graphify 🔗 গিটহাব ট্রেন্ডিং: thedotmack/claude-mem — স্থায়ী কনটেক্সট (গিটহাব): thedotmack/claude-mem 🔗 গিটহাব ট্রেন্ডিং: akitaonrails/ai-memory — দীর্ঘস্থায়ী সমস্যার সমাধান (গিটহাব): akitaonrails/ai-memory ━━━━━━━━━━━━━━━━━━━━━ 💼 লিঙ্কডইন: linkedin.com ⚠️ এআই সংক্রান্ত ঘোষণা: এআই-এর সহায়তায় নির্মিত (বর্ণনা, ভিজ্যুয়াল)। সমস্ত সম্পাদকীয় সিদ্ধান্ত এবং অধ্যায়ভিত্তিক বিশ্লেষণ ভিজে দ্বারা পরিচালিত। বাস্তব মানুষের কোনো বাস্তবসম্মত কৃত্রিম মিডিয়া ব্যবহার করা হয়নি। #Thedotmack #Akitaonrails #GitHub #Graphify #ClaudeMem #AiMemory #KnowledgeGraph #SQLite #ASTParsing #AICodingAgent #DeveloperTools #OpenSource #Coding #AICoding #AgentSuffers [de-DE] Warum dein KI-Coding-Agent an schwerer Amnesie leidet 📲 Direkte Links zu den Communities: 🚀 Telegram → t.me 💬 WhatsApp → whatsapp.com ━━━━━━━━━━━━━━━━━━━━━━━ 💬 Angepinnte Diskussion: Erklären Sie Ihrem KI-Assistenten immer noch jeden Morgen Ihr Projekt aufs Neue oder haben Sie schon lokale Speichertools ausprobiert? ━━━━━━━━━━━━━━━━━━━━━━━ 👆 Was meinst du dazu? Teile deine Meinung in den Kommentaren! 📌 KAPITEL: 00:00 – Die 17-Uhr-Amnesiefalle 00:55 – Persistenter Zustand über Sitzungen hinweg 01:50 – Der Durchbruch mit dem Markdown Wiki ━━━━━━━━━━━━━━━━━━━━━━ 📚 QUELLEN: 🔗 GitHub Trending: Graphify-Labs/graphify – Jede Codebasis umwandeln (GitHub): Graphify-Labs/graphify 🔗 GitHub Trending: thedotmack/claude-mem – Persistenter Kontext (GitHub): thedotmack/claude-mem 🔗 GitHub Trending: akitaonrails/ai-memory — Lösung für längere Texte (GitHub): akitaonrails/ai-memory ━━━━━━━━━━━━━━━━━━━━━━━ 💼 LinkedIn: linkedin.com ⚠️ KI-Offenlegung: KI-gestützte Produktion (Sprechertext, Bildmaterial). Alle redaktionellen Entscheidungen und die Kapitelanalyse wurden von VJ durchgeführt. Keine realistischen, synthetischen Medien mit realen Personen. #Thedotmack #Akitaonrails #GitHub #Graphify #ClaudeMem #AiMemory #KnowledgeGraph #SQLite #ASTParsing #AICodingAgent #DeveloperTools #OpenSource #Coding #AICoding #AgentSuffers [es-US] Por qué tu agente de programación con IA sufre de amnesia severa 📲 Enlaces directos a las comunidades: 🚀 Telegram → t.me 💬 WhatsApp → whatsapp.com ━━━━━━━━━━━━━━━━━━━━━━ 💬 DEBATE FIJADO: ¿Sigues explicándole tu proyecto a tu asistente de IA cada mañana o has probado herramientas de memoria local? ━━━━━━━━━━━━━━━━━━━━━━ 👆 ¿Qué opinas? ¡Comparte tu opinión en los comentarios! 📌 CAPÍTULOS: 00:00 — La trampa de la amnesia de las 5 PM 00:55 — Estado persistente entre sesiones 01:50 — El avance de la wiki Markdown ━━━━━━━━━━━━━━━━━━━━━━ 📚 FUENTES: 🔗 Tendencias en GitHub: Graphify-Labs/graphify — Convierte cualquier código fuente (GitHub): Graphify-Labs/graphify 🔗 Tendencias en GitHub: thedotmack/claude-mem — Contexto persistente (GitHub): thedotmack/claude-mem 🔗 Tendencias en GitHub: akitaonrails/ai-memory — Solución para memoria larga (GitHub): akitaonrails/ai-memory ━━━━━━━━━━━━━━━━━━━━━━ 💼 LinkedIn: linkedin.com ⚠️ AVISO SOBRE IA: Producción asistida por IA (narración, imágenes). Todas las decisiones editoriales y el análisis por capítulos fueron realizados por el VJ. No se utilizaron imágenes sintéticas realistas de personas reales. #Thedotmack #Akitaonrails #GitHub #Graphify #ClaudeMem #AiMemory #KnowledgeGraph #SQLite #ASTParsing #AICodingAgent #DeveloperTools #OpenSource #Coding #AICoding #AgentSuffers [fr-FR] Pourquoi votre agent de codage IA souffre d'une amnésie sévère 📲 Liens directs vers les communautés : 🚀 Telegram → t.me 💬 WhatsApp → whatsapp.com ━━━━━━━━━━━━━━━━━━━━━━ 💬 DISCUSSION ÉPINGLÉE : Réexpliquez-vous encore votre projet à votre assistant IA tous les matins, ou avez-vous essayé les outils de mémoire locale ? ━━━━━━━━━━━━━━━━━━━━━━ 👆 Qu'en pensez-vous ? Partagez votre avis dans les commentaires ! 📌 CHAPITRES : 00:00 — Le piège de l’amnésie de 17 h 00:55 — État persistant entre les sessions 01:50 — La percée du wiki Markdown ━━━━━━━━━━━━━━━━━━━━━━ 📚 SOURCES : 🔗 Tendances GitHub : Graphify-Labs/graphify — Transformez n’importe quel code source (GitHub) : Graphify-Labs/graphify 🔗 Tendances GitHub : thedotmack/claude-mem — Contexte persistant (GitHub) : thedotmack/claude-mem 🔗 Tendances GitHub : akitaonrails/ai-memory — Solution pour les longs visionnages (GitHub) : akitaonrails/ai-memory ━━━━━━━━━━━━━━━━━━━━━━ 💼 LinkedIn : linkedin.com ⚠️ AVERTISSEMENT : Production assistée par IA (narration, visuels). Toutes les décisions éditoriales et l’analyse des chapitres sont réalisées par VJ. Aucun média synthétique réaliste représentant de vraies personnes. #Thedotmack #Akitaonrails #GitHub #Graphify #ClaudeMem #AiMemory #KnowledgeGraph #SQLite #ASTParsing #AICodingAgent #DeveloperTools #OpenSource #Coding #AICoding #AgentSuffers [hi] आपका AI कोडिंग एजेंट गंभीर भूलने की बीमारी (एम्नेसिया) से क्यों पीड़ित है 📲 समुदायों के सीधे लिंक: 🚀 टेलीग्राम → t.me 💬 व्हाट्सएप → whatsapp.com ━━━━━━━━━━━━━━━━━━━━━━━ 💬 पिन किया गया विषय: क्या आप अभी भी हर सुबह अपने एआई सहायक को अपने प्रोजेक्ट के बारे में दोबारा समझाते हैं, या आपने स्थानीय मेमोरी टूल्स का उपयोग करने का प्रयास किया है? ━━━━━━━━━━━━━━━━━━━━━━━ 👆 आपकी क्या राय है? अपने विचार कमेंट्स में बताएं! 📌 अध्याय: 00:00 — शाम 5 बजे की भूलने की बीमारी का जाल 00:55 — सत्रों के दौरान स्थायी स्थिति 01:50 — मार्कडाउन विकी की अभूतपूर्व सफलता ━━━━━━━━━━━━━━━━━━━━━━ 📚 स्रोत: 🔗 GitHub ट्रेंडिंग: Graphify-Labs/graphify — किसी भी कोडबेस को बदलें, (GitHub): Graphify-Labs/graphify 🔗 GitHub ट्रेंडिंग: thedotmack/claude-mem — स्थायी संदर्भ (GitHub): thedotmack/claude-mem 🔗 GitHub ट्रेंडिंग: akitaonrails/ai-memory — लंबे समय तक चलने वाले समाधान (गिटहब): akitaonrails/ai-memory ━━━━━━━━━━━━━━━━━━━━━━ 💼 लिंक्डइन: linkedin.com ⚠️ एआई संबंधी जानकारी: एआई-सहायता प्राप्त निर्माण (नैरेटर, विज़ुअल)। सभी संपादकीय निर्णय और अध्याय-वार विश्लेषण वीजे द्वारा मानव-संचालित हैं। वास्तविक लोगों की कोई कृत्रिम मीडिया सामग्री नहीं है। #Thedotmack #Akitaonrails #GitHub #Graphify #ClaudeMem #AiMemory #KnowledgeGraph #SQLite #ASTParsing #AICodingAgent #DeveloperTools #OpenSource #Coding #AICoding #AgentSuffers [id] Mengapa Agen AI Coding Anda Mengalami Amnesia Parah 📲 Tautan Langsung ke Komunitas: 🚀 Telegram → t.me 💬 WhatsApp → whatsapp.com ━━━━━━━━━━━━━━━━━━━━━━ 💬 DISKUSI YANG DISEMARTKAN: Apakah Anda masih menjelaskan ulang proyek Anda kepada asisten AI Anda setiap pagi, atau sudahkah Anda mencoba alat memori lokal? ━━━━━━━━━━━━━━━━━━━━━━ 👆 Bagaimana pendapatmu? Sampaikan pemikiranmu di kolom komentar! 📌 BAB: 00:00 — Jebakan Amnesia Pukul 5 Sore 00:55 — Status Persisten Lintas Sesi 01:50 — Terobosan Wiki Markdown ━━━━━━━━━━━━━━━━━━━━━━ 📚 SUMBER: 🔗 Tren GitHub: Graphify-Labs/graphify — Ubah kode apa pun, (GitHub): Graphify-Labs/graphify 🔗 Tren GitHub: thedotmack/claude-mem — Konteks Persisten (GitHub): thedotmack/claude-mem 🔗 Tren GitHub: akitaonrails/ai-memory — Solusi untuk memori yang lama (GitHub): akitaonrails/ai-memory ━━━━━━━━━━━━━━━━━━━━━━ 💼 LinkedIn: linkedin.com ⚠️ PENGUNGKAPAN AI: Produksi dibantu AI (narasi, visual). Semua keputusan editorial dan analisis bab didorong oleh manusia, yaitu VJ. Tidak ada media sintetis realistis dari orang sungguhan. #Thedotmack #Akitaonrails #GitHub #Graphify #ClaudeMem #AiMemory #KnowledgeGraph #SQLite #ASTParsing #AICodingAgent #DeveloperTools #OpenSource #Coding #AICoding #AgentSuffers [it] Perché il tuo agente di programmazione AI soffre di una grave amnesia 📲 Link diretti alle community: 🚀 Telegram → t.me 💬 WhatsApp → whatsapp.com ━━━━━━━━━━━━━━━━━━━━━━ 💬 DISCUSSIONE IN EVIDENZA: Devi ancora rispiegare il tuo progetto al tuo assistente IA ogni mattina, oppure hai provato strumenti di memoria locale? ━━━━━━━━━━━━━━━━━━━━━━ 👆 Qual è la tua opinione? Condividi i tuoi pensieri nei commenti! 📌 CAPITOLI: 00:00 — La trappola dell'amnesia delle 17:00 00:55 — Stato persistente tra sessioni 01:50 — La svolta di Markdown Wiki ━━━━━━━━━━━━━━━━━━━━━━ 📚 FONTI: 🔗 GitHub Trending: Graphify-Labs/graphify — Trasforma qualsiasi codebase (GitHub): Graphify-Labs/graphify 🔗 GitHub Trending: thedotmack/claude-mem — Contesto persistente (GitHub): thedotmack/claude-mem 🔗 GitHub Trending: akitaonrails/ai-memory — Soluzione per contenuti di lunga durata (GitHub): akitaonrails/ai-memory ━━━━━━━━━━━━━━━━━━━━━━ 💼 LinkedIn: linkedin.com ⚠️ INFORMATIVA SULL'IA: Produzione assistita dall'IA (narrazione, elementi visivi). Tutte le decisioni editoriali e l'analisi dei capitoli sono state effettuate da VJ. Non sono presenti immagini sintetiche realistiche di persone reali. #Thedotmack #Akitaonrails #GitHub #Graphify #ClaudeMem #AiMemory #KnowledgeGraph #SQLite #ASTParsing #AICodingAgent #DeveloperTools #OpenSource #Coding #AICoding #AgentSuffers [iw] מדוע סוכן קידוד הבינה המלאכותית שלך סובל מאמנזיה חמורה 📲 קישורים ישירים לקהילות: 🚀 טלגרם → t.me 💬 וואטסאפ → whatsapp.com ━━━━━━━━━━━━━━━━━━━━━━━ 💬 דיון מוצמד: האם אתם עדיין מסבירים מחדש את הפרויקט שלכם לעוזר הבינה המלאכותית שלכם כל בוקר, או שניסיתם כלי זיכרון מקומיים? ━━━━━━━━━━━━━━━━━━━━━━━ 👆 מה דעתכם? שתפו את מחשבותיכם בתגובות! 📌 פרקים: 00:00 — מלכודת האמנזיה של 5 PM 00:55 — מצב מתמשך לאורך סשנים 01:50 — פריצת דרך בוויקי Markdown ━━━━━━━━━━━━━━━━━━━━━━━ 📚 מקורות: 🔗 מגמות GitHub: Graphify-Labs/graphify — סובב כל בסיס קוד, (GitHub): Graphify-Labs/graphify 🔗 מגמות GitHub: thedotmack/claude-mem — הקשר מתמשך (GitHub): thedotmack/claude-mem 🔗 מגמות GitHub: akitaonrails/ai-memory — פתרון לטווח ארוך (GitHub): akitaonrails/ai-memory ━━━━━━━━━━━━━━━━━━━━━━━ 💼 לינקדאין: linkedin.com ⚠️ גילוי נאות של בינה מלאכותית: הפקה בסיוע בינה מלאכותית (קריינות, ויזואליה). כל החלטות העריכה והניתוח המחולק לפרקים מונעים על ידי אדם על ידי VJ. אין מדיה סינתטית ריאליסטית של אנשים אמיתיים. #Thedotmack #Akitaonrails #GitHub #Graphify #ClaudeMem #AiMemory #KnowledgeGraph #SQLite #ASTParsing #AICodingAgent #DeveloperTools #OpenSource #Coding #AICoding #AgentSuffers [ja] なぜあなたのAIコーディングエージェントは深刻な記憶喪失に陥るのか 📲 コミュニティへの直接リンク: 🚀 Telegram → t.me 💬 WhatsApp → whatsapp.com ━━━━━━━━━━━━━━━━━━━━━━ 💬 固定ディスカッション:毎朝AIアシスタントにプロジェクトの説明をしていますか?それともローカルメモリツールを試してみましたか? ━━━━━━━━━━━━━━━━━━━━━━━ 👆 あなたのご意見をお聞かせください!コメント欄にご意見をお寄せください! 📌 チャプター: 00:00 — 午後5時の記憶喪失の罠 00:55 — セッション間での永続的な状態 01:50 — Markdown Wikiのブレークスルー ━━━━━━━━━━━━━━━━━━━━━━ 📚 ソース: 🔗 GitHub トレンド: Graphify-Labs/graphify — あらゆるコードベースを変換 (GitHub): Graphify-Labs/graphify 🔗 GitHub トレンド: thedotmack/claude-mem — 永続的なコンテキスト (GitHub): thedotmack/claude-mem 🔗 GitHub トレンド: akitaonrails/ai-memory — 長いデータのソリューション (GitHub): akitaonrails/ai-memory ━━━━━━━━━━━━━━━━━━━━━━━ 💼 LinkedIn: linkedin.com ⚠️ AIに関する開示:AIによる制作支援(ナレーション、ビジュアル)。編集上の決定および章ごとの分析はすべてVJによる人間主導で行われます。実在の人物を模した合成メディアは一切使用していません。 #Thedotmack #Akitaonrails #GitHub #Graphify #ClaudeMem #AiMemory #KnowledgeGraph #SQLite #ASTParsing #AICodingAgent #DeveloperTools #OpenSource #Coding #AICoding #AgentSuffers [ko] 당신의 AI 코딩 에이전트가 심각한 기억상실증에 걸리는 이유 📲 커뮤니티 바로가기: 🚀 텔레그램 → t.me 💬 WhatsApp → whatsapp.com ━━━━━━━━━━━━━━━━━━━━━━━ 💬 고정 게시글: 매일 아침 AI 비서에게 프로젝트를 다시 설명하고 계신가요? 아니면 로컬 메모리 도구를 사용해 보셨나요? ━━━━━━━━━━━━━━━━━━━━━━━ 👆 여러분의 생각은 어떠신가요? 댓글로 의견을 남겨주세요! 📌 목차: 00:00 — 오후 5시 기억상실의 함정 00:55 — 세션 간 지속적인 상태 유지 01:50 — 마크다운 위키의 혁신 ━━━━━━━━━━━━━━━━━━━━━━━ 📚 출처: 🔗 GitHub 트렌딩: Graphify-Labs/graphify — 모든 코드베이스를 변환 (GitHub): Graphify-Labs/graphify 🔗 GitHub 트렌딩: thedotmack/claude-mem — 지속적인 컨텍스트 (GitHub): thedotmack/claude-mem 🔗 GitHub 트렌딩: akitaonrails/ai-memory — 장기 기억 문제 해결 (GitHub): akitaonrails/ai-memory ━━━━━━━━━━━━━━━━━━━━━━ 💼 LinkedIn: linkedin.com ⚠️ AI 고지: AI 지원 제작(내레이션, 영상). 모든 편집 결정 및 챕터별 분석은 VJ가 직접 진행합니다. 실제 사람을 사용한 사실적인 합성 미디어는 사용하지 않습니다. #Thedotmack #Akitaonrails #GitHub #Graphify #ClaudeMem #AiMemory #KnowledgeGraph #SQLite #ASTParsing #AICodingAgent #DeveloperTools #OpenSource #Coding #AICoding #AgentSuffers [ml] നിങ്ങളുടെ AI കോഡിംഗ് ഏജന്റിന് എന്തുകൊണ്ട് കഠിനമായ ഓർമ്മക്കുറവ് ഉണ്ടാകുന്നു? 📲 കമ്മ്യൂണിറ്റികളിലേക്കുള്ള നേരിട്ടുള്ള ലിങ്കുകൾ: 🚀 ടെലിഗ്രാം → t.me 💬 WhatsApp → whatsapp.com ━━━━━━━━━━━━━━━━━━━━━━━ 💬 പിൻ ചെയ്ത ചർച്ച: നിങ്ങൾ ഇപ്പോഴും എല്ലാ ദിവസവും രാവിലെ നിങ്ങളുടെ AI അസിസ്റ്റന്റിനോട് നിങ്ങളുടെ പ്രോജക്റ്റ് വീണ്ടും വിശദീകരിക്കുന്നുണ്ടോ, അതോ ലോക്കൽ മെമ്മറി ഉപകരണങ്ങൾ പരീക്ഷിച്ചിട്ടുണ്ടോ? ━━━━━━━━━━━━━━━━━━━━━━ 👆 നിങ്ങളുടെ അഭിപ്രായം എന്താണ്? നിങ്ങളുടെ അഭിപ്രായങ്ങൾ കമന്റുകളിൽ രേഖപ്പെടുത്തൂ! 📌 അധ്യായങ്ങൾ: 00:00 — 5 PM ഓർമ്മക്കുറവ് കെണി 00:55 — സെഷനുകളിലുടനീളമുള്ള സ്ഥിരമായ അവസ്ഥ 01:50 — മാർക്ക്ഡൗൺ വിക്കി മുന്നേറ്റം ━━━━━━━━━━━━━━━━━━━━━━━━ 📚 ഉറവിടങ്ങൾ: 🔗 GitHub ട്രെൻഡിംഗ്: Graphify-Labs/graphify — ഏതെങ്കിലും കോഡ്ബേസ് തിരിക്കുക, (GitHub): Graphify-Labs/graphify 🔗 GitHub ട്രെൻഡിംഗ്: thedotmack/claude-mem — സ്ഥിരമായ സന്ദർഭം (GitHub): thedotmack/claude-mem 🔗 GitHub ട്രെൻഡിംഗ്: akitaonrails/ai-memory — ദീർഘകാല പരിഹാരം (GitHub): akitaonrails/ai-memory ━━━━━━━━━━━━━━━━━━━━━━ 💼 ലിങ്ക്ഡ്ഇൻ: linkedin.com ⚠️ AI വെളിപ്പെടുത്തൽ: AI സഹായത്തോടെയുള്ള നിർമ്മാണം (ആഖ്യാനം, ദൃശ്യങ്ങൾ). എല്ലാ എഡിറ്റോറിയൽ തീരുമാനങ്ങളും വിജെ മനുഷ്യർ നയിക്കുന്ന അധ്യായ വിശകലനവും. യഥാർത്ഥ ആളുകളുടെ യഥാർത്ഥ സിന്തറ്റിക് മീഡിയ ഇല്ല. #Thedotmack #Akitaonrails #GitHub #Graphify #ClaudeMem #AiMemory #KnowledgeGraph #SQLite #ASTParsing #AICodingAgent #DeveloperTools #OpenSource #Coding #AICoding #AgentSuffers [nl-NL] Waarom jouw AI-codeerassistent aan ernstige amnesie lijdt 📲 Directe links naar communities: 🚀 Telegram → t.me 💬 WhatsApp → whatsapp.com ━━━━━━━━━━━━━━━━━━━━━━ 💬 Vastgepinde discussie: Leg je je project nog steeds elke ochtend opnieuw uit aan je AI-assistent, of heb je al lokale geheugentools geprobeerd? ━━━━━━━━━━━━━━━━━━━━━━━ 👆 Wat vind jij ervan? Laat je mening achter in de reacties! 📌 HOOFDSTUKKEN: 00:00 — De 5 PM Amnesia-val 00:55 — Permanente status over sessies heen 01:50 — De Markdown Wiki-doorbraak ━━━━━━━━━━━━━━━━━━━━━━ 📚 BRONNEN: 🔗 GitHub Trending: Graphify-Labs/graphify — Zet elke codebase om (GitHub): Graphify-Labs/graphify 🔗 GitHub Trending: thedotmack/claude-mem — Permanente context (GitHub): thedotmack/claude-mem 🔗 GitHub Trending: akitaonrails/ai-memory — Oplossing voor lange video's (GitHub): akitaonrails/ai-memory ━━━━━━━━━━━━━━━━━━━━━━ 💼 LinkedIn: linkedin.com ⚠️ AI-VERKLARING: Productie (vertelling, beeldmateriaal) met behulp van AI. Alle redactionele beslissingen en analyses per hoofdstuk zijn door VJ zelf genomen. Geen realistische, synthetische media met echte mensen. #Thedotmack #Akitaonrails #GitHub #Graphify #ClaudeMem #AiMemory #KnowledgeGraph #SQLite #ASTParsing #AICodingAgent #DeveloperTools #OpenSource #Coding #AICoding #AgentSuffers [pa] ਤੁਹਾਡਾ AI ਕੋਡਿੰਗ ਏਜੰਟ ਗੰਭੀਰ ਯਾਦਾਸ਼ਤ ਦੀ ਕਮੀ (Amnesia) ਤੋਂ ਕਿਉਂ ਪੀੜਤ ਹੈ 📲 ਕਮਿਊਨਿਟੀਆਂ ਦੇ ਸਿੱਧੇ ਲਿੰਕ: 🚀 ਟੈਲੀਗ੍ਰਾਮ → t.me 💬 WhatsApp → whatsapp.com ━━━━━━━━━━━━━━━━━━━━ 💬 ਪਿੰਨ ਕੀਤੀ ਚਰਚਾ: ਕੀ ਤੁਸੀਂ ਅਜੇ ਵੀ ਹਰ ਸਵੇਰ ਆਪਣੇ AI ਸਹਾਇਕ ਨੂੰ ਆਪਣੇ ਪ੍ਰੋਜੈਕਟ ਨੂੰ ਦੁਬਾਰਾ ਸਮਝਾ ਰਹੇ ਹੋ, ਜਾਂ ਕੀ ਤੁਸੀਂ ਸਥਾਨਕ ਮੈਮੋਰੀ ਟੂਲ ਅਜ਼ਮਾਏ ਹਨ? ━━━━━━━━━━━━━━━━━━━━ 👆 ਤੁਹਾਡਾ ਕੀ ਵਿਚਾਰ ਹੈ? ਆਪਣੇ ਵਿਚਾਰ ਟਿੱਪਣੀਆਂ ਵਿੱਚ ਦਿਓ! 📌 ਅਧਿਆਏ: 00:00 — ਸ਼ਾਮ 5 ਵਜੇ ਭੁੱਲਣ ਦੀ ਬਿਮਾਰੀ ਦਾ ਜਾਲ 00:55 — ਸੈਸ਼ਨਾਂ ਵਿੱਚ ਨਿਰੰਤਰ ਸਥਿਤੀ 01:50 — ਮਾਰਕਡਾਊਨ ਵਿਕੀ ਬ੍ਰੇਕਥਰੂ ━━━━━━━━━━━━━━━━━━━━━━━━ 📚 ਸਰੋਤ: 🔗 GitHub ਟ੍ਰੈਂਡਿੰਗ: Graphify-Labs/graphify — ਕੋਈ ਵੀ ਕੋਡਬੇਸ ਮੋੜੋ, (GitHub): Graphify-Labs/graphify 🔗 GitHub ਟ੍ਰੈਂਡਿੰਗ: thedotmack/claude-mem — ਸਥਾਈ ਸੰਦਰਭ (GitHub): thedotmack/claude-mem 🔗 GitHub ਟ੍ਰੈਂਡਿੰਗ: akitaonrails/ai-memory — ਲੰਬੇ ਸਮੇਂ ਲਈ ਹੱਲ (GitHub): akitaonrails/ai-memory ━━━━━━━━━━━━━━━━━━━━━━━ 💼 ਲਿੰਕਡਇਨ: linkedin.com ⚠️ AI ਡਿਸਕਲੋਜ਼ਰ: AI-ਸਹਾਇਤਾ ਪ੍ਰਾਪਤ ਉਤਪਾਦਨ (ਕਥਾ, ਵਿਜ਼ੂਅਲ)। ਸਾਰੇ ਸੰਪਾਦਕੀ ਫੈਸਲੇ ਅਤੇ ਅਧਿਆਇ ਵਿਸ਼ਲੇਸ਼ਣ VJ ਦੁਆਰਾ ਮਨੁੱਖ-ਸੰਚਾਲਿਤ। ਅਸਲ ਲੋਕਾਂ ਦਾ ਕੋਈ ਯਥਾਰਥਵਾਦੀ ਸਿੰਥੈਟਿਕ ਮੀਡੀਆ ਨਹੀਂ। #Thedotmack #Akitaonrails #GitHub #Graphify #ClaudeMem #AiMemory #KnowledgeGraph #SQLite #ASTParsing #AICodingAgent #DeveloperTools #OpenSource #Coding #AICoding #AgentSuffers [pl] Dlaczego Twój AI asystent programowania cierpi na ciężką amnezję 📲 Bezpośrednie linki do społeczności: 🚀 Telegram → t.me 💬 WhatsApp → whatsapp.com ━━━━━━━━━━━━━━━━━━━━━━━ 💬 PRZYPIĘTA DYSKUSJA: Czy nadal każdego ranka tłumaczysz swój projekt asystentowi AI, czy próbowałeś już narzędzi pamięci lokalnej? ━━━━━━━━━━━━━━━━━━━━━━━ 👆 Co o tym sądzisz? Podziel się swoimi przemyśleniami w komentarzach! 📌 ROZDZIAŁY: 00:00 — Pułapka amnezji o 17:00 00:55 — Trwały stan między sesjami 01:50 — Przełom w Markdown Wiki ━━━━━━━━━━━━━━━━━━━━━━━ 📚 ŹRÓDŁA: 🔗 Popularne w GitHub: Graphify-Labs/graphify — Zmień dowolną bazę kodu, (GitHub): Graphify-Labs/graphify 🔗 Popularne w GitHub: thedotmack/claude-mem — Trwały kontekst (GitHub): thedotmack/claude-mem 🔗 GitHub Trendy: akitaonrails/ai-memory — Rozwiązanie dla długich (GitHub): akitaonrails/ai-memory ━━━━━━━━━━━━━━━━━━━━━━━ 💼 LinkedIn: linkedin.com ⚠️ INFORMACJA O SZTUCZNEJ INTELIGENCJI: Produkcja wspomagana przez sztuczną inteligencję (narracja, wizualizacje). Wszystkie decyzje redakcyjne i analiza rozdziałów są prowadzone przez VJ. Brak realistycznych, syntetycznych mediów z udziałem prawdziwych ludzi. #Thedotmack #Akitaonrails #GitHub #Graphify #ClaudeMem #AiMemory #KnowledgeGraph #SQLite #ASTParsing #AICodingAgent #DeveloperTools #OpenSource #Coding #AICoding #AgentSuffers [pt-BR] Por que seu agente de IA para programação sofre de amnésia severa 📲 Links diretos para as comunidades: 🚀 Telegram → t.me 💬 WhatsApp → whatsapp.com ━━━━━━━━━━━━━━━━━━━━━━ 💬 DISCUSSÃO FIXADA: Você ainda está explicando seu projeto para seu assistente de IA todas as manhãs ou já experimentou ferramentas de memória local? ━━━━━━━━━━━━━━━━━━━━━━ 👆 Qual a sua opinião? Deixe seus comentários! 📌 CAPÍTULOS: 00:00 — A Armadilha da Amnésia das 17h 00:55 — Estado Persistente entre Sessões 01:50 — A Inovação do Wiki Markdown ━━━━━━━━━━━━━━━━━━━━━━ 📚 FONTES: 🔗 GitHub Trending: Graphify-Labs/graphify — Transforme qualquer base de código (GitHub): Graphify-Labs/graphify 🔗 GitHub Trending: thedotmack/claude-mem — Contexto Persistente (GitHub): thedotmack/claude-mem 🔗 GitHub Trending: akitaonrails/ai-memory — Solução para conteúdo longo (GitHub): akitaonrails/ai-memory ━━━━━━━━━━━━━━━━━━━━━━ 💼 LinkedIn: linkedin.com ⚠️ AVISO SOBRE IA: Produção assistida por IA (narração, visuais). Todas as decisões editoriais e análises de capítulos foram conduzidas por VJ. Não há mídia sintética realista com pessoas reais. #Thedotmack #Akitaonrails #GitHub #Graphify #ClaudeMem #AiMemory #KnowledgeGraph #SQLite #ASTParsing #AICodingAgent #DeveloperTools #OpenSource #Coding #AICoding #AgentSuffers [ru] Почему ваш ИИ-ассистент для программирования страдает от тяжелой амнезии 📲 Прямые ссылки на сообщества: 🚀 Telegram → t.me 💬 WhatsApp → whatsapp.com ━━━━━━━━━━━━━━━━━━━━━━━ 💬 ЗАКРЕПЛЕННОЕ ОБСУЖДЕНИЕ: Вы по-прежнему каждое утро заново объясняете свой проект своему ИИ-помощнику или пробовали использовать инструменты для работы с локальной памятью? ━━━━━━━━━━━━━━━━━━━━━━ 👆 Каково ваше мнение? Поделитесь своими мыслями в комментариях! 📌 РАЗДЕЛЫ: 00:00 — Ловушка амнезии в 17:00 00:55 — Сохранение состояния между сессиями 01:50 — Прорыв в вики Markdown ━━━━━━━━━━━━━━━━━━━━━━━ 📚 ИСТОЧНИКИ: 🔗 В тренде на GitHub: Graphify-Labs/graphify — Преобразуйте любой код (GitHub): Graphify-Labs/graphify 🔗 В тренде на GitHub: thedotmack/claude-mem — Сохранение контекста (GitHub): thedotmack/claude-mem 🔗 В тренде на GitHub: akitaonrails/ai-memory — Решение для длинных файлов (GitHub): akitaonrails/ai-memory ━━━━━━━━━━━━━━━━━━━━━━━ 💼 LinkedIn: linkedin.com ⚠️ РАСКРЫТИЕ ИНФОРМАЦИИ ОБ ИИ: Производство осуществляется с помощью ИИ (озвучка, визуальные эффекты). Все редакционные решения и анализ глав принимаются человеком, виджеем. Нет реалистичных синтетических медиа с реальными людьми. #Thedotmack #Akitaonrails #GitHub #Graphify #ClaudeMem #AiMemory #KnowledgeGraph #SQLite #ASTParsing #AICodingAgent #DeveloperTools #OpenSource #Coding #AICoding #AgentSuffers [ta] உங்கள் AI கோடிங் ஏஜெண்ட் ஏன் கடுமையான ஞாபக மறதியால் பாதிக்கப்படுகிறது? 📲 சமூகங்களுக்கான நேரடி இணைப்புகள்: 🚀 டெலிகிராம் → t.me 💬 வாட்ஸ்அப் → whatsapp.com ━━━━━━━━━━━━━━━━━━━━━━ 💬 நிலைப்படுத்தப்பட்ட கலந்துரையாடல்: நீங்கள் இன்னும் ஒவ்வொரு காலையும் உங்கள் திட்டத்தை உங்கள் AI உதவியாளரிடம் மீண்டும் விளக்கிக் கொண்டிருக்கிறீர்களா, அல்லது உள்ளூர் நினைவகக் கருவிகளைப் பயன்படுத்த முயன்றிருக்கிறீர்களா? ━━━━━━━━━━━━━━━━━━━━━━ 👆 உங்கள் கருத்து என்ன? உங்கள் எண்ணங்களைக் கருத்துப் பகுதியில் பதிவிடுங்கள்! 📌 அத்தியாயங்கள்: 00:00 — மாலை 5 மணி மறதிப் பொறி 00:55 — அமர்வுகள் முழுவதும் நிலைத்திருக்கும் நிலை 01:50 — மார்க்டவுன் விக்கியின் திருப்புமுனை ━━━━━━━━━━━━━━━━━━━━━━━ 📚 ஆதாரங்கள்: 🔗 GitHub Trending: Graphify-Labs/graphify — எந்தவொரு குறியீட்டுத் தொகுப்பையும் மாற்றவும், (GitHub): Graphify-Labs/graphify 🔗 GitHub Trending: thedotmack/claude-mem — நிலைத்திருக்கும் சூழல் (GitHub): thedotmack/claude-mem 🔗 GitHub Trending: akitaonrails/ai-memory — நீண்ட காலத்திற்கான தீர்வு (கிட்ஹப்): akitaonrails/ai-memory ━━━━━━━━━━━━━━━━━━━━━━━ 💼 லிங்க்ட்இன்: linkedin.com ⚠️ செயற்கை நுண்ணறிவு பற்றிய அறிவிப்பு: செயற்கை நுண்ணறிவு உதவியுடன் உருவாக்கப்பட்ட தயாரிப்பு (விவரிப்பு, காட்சிகள்). அனைத்து தலையங்க முடிவுகளும் அத்தியாய வாரியான பகுப்பாய்வும் வி.ஜே-யால் (VJ) மனிதர்களால் இயக்கப்படுகின்றன. உண்மையான மனிதர்களின் தத்ரூபமான செயற்கை ஊடகங்கள் எதுவும் இல்லை. #Thedotmack #Akitaonrails #GitHub #Graphify #ClaudeMem #AiMemory #KnowledgeGraph #SQLite #ASTParsing #AICodingAgent #DeveloperTools #OpenSource #Coding #AICoding #AgentSuffers [te] మీ AI కోడింగ్ ఏజెంట్‌కు తీవ్రమైన మతిమరుపు ఎందుకు వస్తుంది? 📲 కమ్యూనిటీలకు ప్రత్యక్ష లింకులు: 🚀 టెలిగ్రామ్ → t.me 💬 వాట్సాప్ → whatsapp.com ━━━━━━━━━━━━━━━━━━━━━━━ 💬 పిన్ చేసిన చర్చ: మీరు ఇప్పటికీ ప్రతి ఉదయం మీ AI అసిస్టెంట్‌కు మీ ప్రాజెక్ట్‌ను మళ్లీ వివరిస్తున్నారా, లేదా మీరు లోకల్ మెమరీ టూల్స్‌ను ప్రయత్నించారా? ━━━━━━━━━━━━━━━━━━━━━━ 👆 మీ అభిప్రాయం ఏమిటి? మీ ఆలోచనలను కామెంట్లలో తెలియజేయండి! 📌 అధ్యాయాలు: 00:00 — సాయంత్రం 5 గంటల మతిమరుపు ఉచ్చు 00:55 — సెషన్‌ల అంతటా నిరంతర స్థితి 01:50 — మార్క్‌డౌన్ వికీలో ఒక అద్భుత ఆవిష్కరణ ━━━━━━━━━━━━━━━━━━━━━━━ 📚 మూలాలు: 🔗 గిట్‌హబ్ ట్రెండింగ్: Graphify-Labs/graphify — ఏ కోడ్‌బేస్‌నైనా మార్చండి, (గిట్‌హబ్): Graphify-Labs/graphify 🔗 గిట్‌హబ్ ట్రెండింగ్: thedotmack/claude-mem — నిరంతర సందర్భం (గిట్‌హబ్): thedotmack/claude-mem 🔗 గిట్‌హబ్ ట్రెండింగ్: akitaonrails/ai-memory — దీర్ఘకాలిక సమస్యకు పరిష్కారం (GitHub): akitaonrails/ai-memory ━━━━━━━━━━━━━━━━━━━━━━ 💼 లింక్డ్‌ఇన్: linkedin.com ⚠️ AI ప్రకటన: నిర్మాణం (వ్యాఖ్యానం, దృశ్యాలు) AI సహాయంతో జరిగింది. అన్ని సంపాదకీయ నిర్ణయాలు మరియు అధ్యాయాల వారీ విశ్లేషణ VJ ద్వారా మానవీయంగా నడపబడతాయి. నిజమైన వ్యక్తుల యొక్క వాస్తవిక కృత్రిమ మీడియా ఏదీ ఉండదు. #Thedotmack #Akitaonrails #GitHub #Graphify #ClaudeMem #AiMemory #KnowledgeGraph #SQLite #ASTParsing #AICodingAgent #DeveloperTools #OpenSource #Coding #AICoding #AgentSuffers [uk] Чому ваш AI-агент для програмування страждає від важкої амнезії 📲 Прямі посилання на спільноти: 🚀 Telegram → t.me 💬 WhatsApp → whatsapp.com ━━━━━━━━━━━━━━━━━━━━━━━ 💬 ЗАКРІПЛЕНЕ ОБГОВОРЕННЯ: Ви все ще щоранку пояснюєте свій проект своєму помічнику зі штучним інтелектом, чи пробували інструменти локальної пам'яті? ━━━━━━━━━━━━━━━━━━━━━━━ 👆 А що ви думаєте? Поділіться своїми думками в коментарях! 📌 РОЗДІЛИ: 00:00 — Пастка амнезії о 17:00 00:55 — Зберігання стану протягом сеансів 01:50 — Прорив вікі Markdown ━━━━━━━━━━━━━━━━━━━━━━━ 📚 ДЖЕРЕЛА: 🔗 Тренди GitHub: Graphify-Labs/graphify — Перетворіть будь-яку кодову базу (GitHub): Graphify-Labs/graphify 🔗 Тренди GitHub: thedotmack/claude-mem — Зберігання контексту (GitHub): thedotmack/claude-mem 🔗 Тренди GitHub: akitaonrails/ai-memory — Рішення для довгих (GitHub): akitaonrails/ai-memory ━━━━━━━━━━━━━━━━━━━━━━━━ 💼 LinkedIn: linkedin.com ⚠️ РОЗКРИТТЯ ІНФОРМАЦІЇ ПРО ШІ: Виробництво за допомогою ШІ (оповідь, візуальні матеріали). Усі редакційні рішення та аналіз розділів керуються людиною завдяки VJ. Жодних реалістичних синтетичних медіафайлів із реальними людьми. #Thedotmack #Akitaonrails #GitHub #Graphify #ClaudeMem #AiMemory #KnowledgeGraph #SQLite #ASTParsing #AICodingAgent #DeveloperTools #OpenSource #Coding #AICoding #AgentSuffers

  10. A short look at microduck, the open source software that runs a small walking duck robot. Code and docs: pollen-robotics/microduck t.co

  11. Redditu/FiNiX_Forge · r/SideProject · 2 points · 13 comments

    I shipped Android Auto for my game-inspired navigation app after your feedback Screenshots: phone + car hero — github.com/the-geeky-couldron/waypoint/blob/main/… Android Auto dashboard — github.com/the-geeky-couldron/waypoint/blob/main/… A few people asked for Android Auto when I shared Waypoint here, so I built it into version 1.1.0. The car screen now follows the world selected on the phone, with a visible route line, turn cues, remaining distance and ETA. Search, saved/recent destinations, recenter and zoom are available on the dashboard too. Ferrostar now handles guidance progress and rerouting. I tested the projected UI in Android Auto's Desktop Head Unit on a simulated London route; the updated README includes those screenshots. I still need a physical-car and long-duration drive test. Maps and routes require internet, and there is no live traffic, offline routing or lane guidance. Waypoint is free and open source, with all 27 game-inspired worlds included. Release APK and notes: github.com/the-geeky-couldron/waypoint/releases/t… If you try it in your car, I'd really value specifics: is the route easy to see, does the follow camera feel right, and which controls are awkward on your display?

  12. YouTubeSkills Unleashed · YouTube description · 7 likes · 1 comment · 970 views

    Claude Code skills: 3 AI repos worth installing Claude Code skills, Openspline and MCP servers: 3 AI repos actually worth installing, with a KEEP or DELETE verdict on each. anthropics/skills is Anthropic's official set of Claude skills for Word, PDF, PowerPoint and Excel. Openspline animates a live talking avatar. The official MCP servers let Claude use your tools and data. Repos: anthropics/skills: anthropics/skills Openspline: openspline/openspline MCP servers: modelcontextprotocol/servers Comment SETUP for the full setup guide. The presenter is an AI-generated avatar of Adrian, voiced with his cloned voice. #Shorts #ClaudeCode #AITools #MCP

  13. X@FSFG · 42 views

    What Standard Evaluations Hide About Detectors of Hijacked LLM Agents: Rare Attacks, Unseen Tools and Benchmark Transfer Mahmoud Abbasi, Juan M. Núñez V., Amin Shahraki arxiv.org [𝚌𝚜.𝙲𝚁 𝚌𝚜.𝙻𝙶] 💬Code: Mahmoud-Abbasi-svg/agent-trace-detector-eval t.co

  14. X@bertholomusai · 9 likes · 813 views

    Two recipes, one release for @deepseek_ai V4.1-Flash: TP2 v0.7.4, 2× GB10 • 2× the users at once (8 → 16) • 16 users: 164.8 → 199.1 tok/s (+20.8%) TP4 v0.3.6, 4× GB10 • 64× faster first token behind a 93K prompt • 16 users +4.4% Bit-exact replies. github.com/bertholomus t.co

  15. X@aonbreakin · 5 views

    Open source for create ligi/SurvivalManual

  16. Review the grant proposal here: zcashcommunitygrants#534

  17. Redditu/Unable-Usual3021 · r/u_Unable-Usual3021 · 1 point

    I built an open-source 3D video editor with Al-assisted creation. Here's how it works! I've been building JianJi, an open-source 3D video editor designed for creating product showcases and promotional videos, with AI-assisted creation features. [GitHub](darkmatter2048/JianJi)(Thanks for the like⭐): [darkmatter2048/JianJi](darkmatter2048/JianJi) # How it works The project is built with React 19, TypeScript, Three.js, React Three Fiber, Zustand, and Electron. There are three interesting parts I'd like to share: **1. Custom Animation System** Each 3D object has its own timeline, supporting keyframes for position, rotation, scale, visibility, and custom speed curves. The editor evaluates animation states based on the current playback time and updates the 3D scene. **2. AI-Assisted Creation with a Custom DSL** Instead of letting AI generate Three.js code directly, I designed a human-readable project DSL. AI translates natural-language requests into structured project descriptions, which are parsed and applied by the editor. This keeps the AI layer independent from the rendering engine and makes generated projects easier to inspect and modify. **3. Video Export Pipeline** Video export uses WebCodecs, Web Workers, and mp4-muxer. It renders the scene frame by frame, distributes encoding tasks across multiple workers, and packages the results into MP4. # My AI Coding Experience The project initially started with DeepSeek Harness + DeepSeek V4. Honestly, the experience was quite frustrating😥. A single conversation could take tens of minutes or even nearly two hours, and the results weren't always satisfactory. Later, I switched to Codex + GPT-5.6 (Sol) with medium reasoning effort. It helped me clean up, refactor, and fix much of the earlier generated code. Surprisingly, GPT also cost me significantly less overall than DeepSeek🤩, mainly because it required fewer iterations and much less repeated work. This taught me that a cheaper model doesn't necessarily mean a cheaper development process. Efficiency and the ability to deliver reliable results matter just as much. # Feedback Welcome! JianJi is still under active development, so bugs and shortcomings are inevitable. I'd especially appreciate feedback on the architecture, animation system, AI integration, or anything that could be improved. I'll add valid feedback and contributions to the acknowledgment section of the README. Thanks for checking it out!

  18. X@howtopam · 37 views

    Calculator – simple calculator for the COSMIC desktop. The calculator has an operations history, providing the ability to bring previous calculations back to the screen for further use or inspection. cosmic-utils/cosmic-ext-calculator t.co

  19. X@addy_oz · 28 views

    @sammy_capital Great thread. Inspired by REA, I re-built a REA skill with recursive self learning, so it keeps building till the task is done. Give it a spin! Speedrunlab/reverse-engineer-anything-self-learning-loop

  20. X@suzukiplan · 1 like · 134 views

    音声ファイルからボーカルキャンセルをしたかったのですが、有料ツールしか見当たらなかったので、MetaのDemucsで作った無料で使えるものを置いておきます。 suzukiplan/vocal-remover

  21. X@ShengguangWu · 1 like · 24 views

    See more on our website, with the paper and the code: Website: roboarchitect-ai.github.io Paper: huggingface.co Code: roboarchitect-ai/RoboArchitect

  22. DEV@gabrielanhaia · 1 reaction

    config() Inside Your PHP Domain Is a Hidden Dependency. Inject Typed Settings Instead - Book: Decoupled PHP — Clean and Hexagonal Architecture for Applications That Outlive the Framework - Also by me: Thinking in Go (2-book series) — Complete Guide to Go Programming + Hexagonal Architecture in Go - My project: Hermes IDE | GitHub — an IDE for developers who ship with Claude Code and other AI coding tools - Me: xgabriel.com | GitHub --- Someone tidies up config/billing.php and renames trial_days to trial_length_days. They update the two call sites their editor found. The suite stays green, because no test asserts how long a trial lasts. The deploy goes out. The next customer who signs up gets a free trial that ends the second it starts. Nothing threw. The use case read config('billing.trial_days'), got null for a key that no longer exists, cast it with (int), and the PHP manual is blunt about what that does: null is always converted to zero. A zero-day trial is a perfectly valid integer. The rename is the trigger, but the bug is older. A domain class reached out to the framework for a value it never declared. The use case that only runs inside Laravel This is the shape you find in a lot of Laravel codebases. The domain lives under src/Domain, mapped as its own PSR-4 namespace in Composer's composer.json, but it still calls the global helper: <?php declare(strict_types=1); namespace Domain\Billing; use DateInterval; use DateTimeImmutable; final class StartTrial { public function __construct( private SubscriptionRepository $subscriptions, ) {} public function handle( string $accountId, DateTimeImmutable $now, ): Subscription { $days = (int) config('billing.trial_days'); $subscription = new Subscription( accountId: $accountId, currency: config('billing.currency'), trialEndsAt: $now->add( new DateInterval("P{$days}D"), ), ); $this->subscriptions->save($subscription); return $subscription; } } Three things are wrong with it, and only one of them is the rename. It only runs inside a booted app. The config() helper is app('config')->get($key, $default), and app() asks the global container to make('config'). In a plain PHPUnit test there is no booted application, so nothing is bound under config, and the container's build() throws a BindingResolutionException with the message Target class [config] does not exist. Your unit test for a date calculation now needs Laravel's TestCase and a full boot. The constructor lies. The signature says StartTrial needs a repository. It also needs two config keys, and the only way to learn that is to read the method body. A reviewer, a new teammate, or a coding agent wiring this class up gets no hint from the type system. A renamed key fails quietly. The Laravel 13 configuration docs say config() returns the default when the option does not exist, and the helper's default is null. Cast it and you get the zero-day trial from the opening. Skip the cast and null travels further before something else trips over it. !A small hexagon-shaped domain module with a thin hidden wire running out of its floor, under the ground, to a large framework machine The use case looks self-contained until you follow the wire it never declared. A readonly settings object, validated once The fix is to name the inputs. Billing needs a trial length and a currency, so give the domain a class that holds exactly those, with the rules the business actually has: <?php declare(strict_types=1); namespace Domain\Billing; use InvalidArgumentException; final readonly class BillingSettings { public function __construct( public int $trialDays, public string $currency, ) { if ($trialDays < 1 || $trialDays > 90) { throw new InvalidArgumentException( "trialDays must be 1..90, got {$trialDays}", ); } if (preg_match('/^[A-Z]{3}$/', $currency) !== 1) { throw new InvalidArgumentException( "currency must be 3 uppercase letters, " . "got '{$currency}'", ); } } } Readonly classes arrived in PHP 8.2: every declared property becomes readonly and dynamic properties are refused. Per the properties page, a readonly property is initialized once and any later write throws an Error. Once a BillingSettings exists, it is valid, and it stays that way for the life of the request. The range check is where the zero-day trial dies. Even if a bad cast slips through upstream, 0 never becomes a settings object. The use case now asks for what it uses: final class StartTrial { public function __construct( private SubscriptionRepository $subscriptions, private BillingSettings $settings, ) {} public function handle( string $accountId, DateTimeImmutable $now, ): Subscription { $days = $this->settings->trialDays; $subscription = new Subscription( accountId: $accountId, currency: $this->settings->currency, trialEndsAt: $now->add( new DateInterval("P{$days}D"), ), ); $this->subscriptions->save($subscription); return $subscription; } } For completeness, the two small types it touches: final readonly class Subscription { public function __construct( public string $accountId, public string $currency, public DateTimeImmutable $trialEndsAt, ) {} } interface SubscriptionRepository { public function save(Subscription $subscription): void; } No use Illuminate\... anywhere in src/Domain. The time is already passed in as $now, for the same reason: the clock is a dependency too. The service provider is the adapter Something still has to read the config file. That job belongs at the edge, in the framework layer, and Laravel's service providers are where bindings go. Start with the config file itself, because it has a trap: <?php // config/billing.php return [ 'trial_days' => (int) env('BILLING_TRIAL_DAYS', 14), 'currency' => env('BILLING_CURRENCY', 'EUR'), ]; The environment variable types table is clear that .env values are parsed as strings, apart from a few reserved words like true, false and null. Without the (int), BILLING_TRIAL_DAYS=30 reaches your code as the string "30". Keep env() here and nowhere else: the docs warn that once you run config:cache, the .env file is no longer loaded and env() only returns system-level variables. Now the provider: <?php declare(strict_types=1); namespace App\Providers; use Domain\Billing\BillingSettings; use Illuminate\Support\Facades\Config; use Illuminate\Support\ServiceProvider; final class BillingServiceProvider extends ServiceProvider { public function register(): void { $this->app->singleton( BillingSettings::class, fn () => new BillingSettings( trialDays: Config::integer('billing.trial_days'), currency: Config::string('billing.currency'), ), ); } public function boot(): void { // Fail at boot, not on the first signup. $this->app->make(BillingSettings::class); } } Config::integer() and Config::string() are the typed retrieval methods on the facade. In the config repository source, integer() checks is_int() and otherwise throws an InvalidArgumentException with the message pattern Configuration value for key [%s] must be an integer, %s given. Rename the key again and you get that exception, naming the key, instead of a quiet zero. The boot() line is optional and cheap: it builds one small object per boot. What it buys you is timing. A bad value now fails the first request or artisan command after the deploy, with a message that names the field, instead of failing hours later inside whichever signup happens to hit it. The providers docs say boot() runs after every provider has registered, so the config repository is there when you need it. make:provider adds the class to bootstrap/providers.php for you; if you write it by hand, add it there yourself. Because StartTrial only depends on concrete classes and an interface you bind elsewhere, the container resolves it with no extra wiring. !A sealed hexagon receiving one typed card through a narrow slot from an adapter machine standing at its edge Settings cross the boundary once, as a typed object, through an adapter that lives outside the domain. The test needs no framework The domain test extends PHPUnit's own TestCase, not Laravel's, and builds everything with new: <?php declare(strict_types=1); namespace Tests\Unit\Billing; use DateTimeImmutable; use Domain\Billing\BillingSettings; use Domain\Billing\StartTrial; use Domain\Billing\Subscription; use Domain\Billing\SubscriptionRepository; use InvalidArgumentException; use PHPUnit\Framework\TestCase; final class StartTrialTest extends TestCase { public function test_trial_ends_after_setting(): void { $repo = new class implements SubscriptionRepository { /** @var list<Subscription> */ public array $saved = []; public function save(Subscription $s): void { $this->saved[] = $s; } }; $useCase = new StartTrial( $repo, new BillingSettings(trialDays: 14, currency: 'EUR'), ); $sub = $useCase->handle( 'acc_1', new DateTimeImmutable('2026-11-02T10:00:00+00:00'), ); self::assertSame( '2026-11-16', $sub->trialEndsAt->format('Y-m-d'), ); self::assertSame('EUR', $sub->currency); self::assertCount(1, $repo->saved); } public function test_zero_day_trial_is_rejected(): void { $this->expectException(InvalidArgumentException::class); new BillingSettings(trialDays: 0, currency: 'EUR'); } } No RefreshDatabase, no Config::set(), no app boot. Want to check a 30-day trial? Pass 30. The test reads like the business rule, and the second test pins the zero-day trial from the opening so it cannot come back. What about #[Config] and giveConfig? Laravel has two built-in ways to inject config values, and both are better than calling the helper in a method body. The contextual attributes let you write #[Config('billing.trial_days')] int $trialDays in a constructor. That puts the dependency in the signature, where people can see it, with almost no boilerplate. The cost is that your domain class now imports Illuminate\Container\Attributes\Config, and the docs' own re-implementation of the attribute shows it resolving through config->get($key, $default), so any validation is whatever your constructor does on its own. giveConfig keeps the framework out of the class: $this->app->when(StartTrial::class)->needs('$trialDays')->giveConfig('billing.trial_days'). For one primitive in one class, that is a fine choice. Once three use cases need the same four settings and the same range rules, a value object reads better than four loose primitives bound in four places. If you are on Laravel and staying on Laravel, #[Config] in an application service is a reasonable trade. Inside src/Domain, keep it a plain object. Find every leak with one grep Now find the others. The first line catches calls to the global config(), env() and app() helpers under the domain, and skips methods like ->config( or $config(: grep -rnE '(^|[^[:alnum:]_>:$])(config|env|app)\(' src/Domain grep -rn 'Illuminate\\' src/Domain grep -rn 'Config::' src/Domain No output means clean. The second line catches the imported facade, the #[Config] attribute and anything else imported from the framework. The third is there because Laravel still registers default facade aliases, so \Config::get(...) works without a single Illuminate\ string in the file. To stop new ones in CI: if grep -rnE '(^|[^[:alnum:]_>:$])(config|env|app)\(' src/Domain \ || grep -rn 'Config::' src/Domain then echo "framework settings read inside src/Domain" >&2 exit 1 fi If you already run Pest, its architecture expectations accept global function names as well as namespaces, so the same rule fits in one test: arch('domain reads no framework settings') ->expect('Domain') ->not->toUse([ 'config', 'env', 'app', 'Config', 'Illuminate', ]); Work through the matches one bounded context at a time. Each match becomes one field on a settings object and one line in a provider, and its test stops needing the framework. --- If this was useful Settings are one of the quieter ways the framework leaks into the domain, along with the clock and the facade. Decoupled PHP is about keeping all of those at the edge, with ports, adapters and the tests that prove the boundary holds, so your use cases keep working when Laravel or Symfony moves under them. ![Decoupled PHP — Clean and Hexagonal Architecture for Applications That Outlive the Framework](amazon.com) Available on Kindle, Paperback, and Hardcover. English, German, and Japanese editions out now — Portuguese and Spanish coming soon.

  23. 失業率の予測をどう評価し、どう疑ったか:「前月の値」という相手と、公表のタイミング 完全失業率(季節調整値)の1か月先・3か月先を4つのモデルで予測し、「前月の値のまま」と比べました。結論は「1か月先はどのモデルも前月の値に勝てず、3か月先は求人の情報を使う ElasticNet が誤差を15%減らした(DM 検定 p=0.01)」です。 この記事では、評価をどう設計したか、なぜその比べ方を選んだか、結論を崩そうとして何を試し、どう動いたか、何が言えないかを書きます。実装の細部は GitHub に置いています。 1. 問い 「失業率を予測するモデルを作れるか」ではなく、「いちばん単純な予測に、モデルが勝てるか」を問いにしました。 予測のモデルは、作るだけならすぐにできます。難しいのは、それが役に立っているかを確かめることです。失業率は0.1ポイント刻みで公表され、2005年以降の月の変化の38%はゼロ、平均の変化幅は0.083ポイントしかありません。「来月も今月と同じ」と言うだけで、1か月先の平均の外れは0.083ポイントです。これを下回れないなら、どんなに手の込んだモデルでも使う意味はありません。 2. 評価の設計で決めたこと 比べる相手:なぜ「前月の値」か 比べる相手の候補 考えたこと 予測しない(評価指標の絶対値だけを見る) 「MAE 0.11」が良いのか悪いのか判断できない 過去の平均 失業率は水準が大きく動くので、弱すぎる相手になる 前月の値(ナイーブ) 採用。誰でもすぐ出せる予測で、これに勝てないなら使う理由がない 季節ナイーブ(前年同月の動き) 原数値で予測するときに追加(後述) 目的変数も、水準ではなく変化幅 u(T+h) − u(T) にしました。水準のままだと、モデルは「前月の値の近く」を当てるだけで決定係数が高く見えます。変化幅にすれば、前月の値はいつも0を予測するモデルになり、モデルが足したものだけを評価できます。 公表のタイミング:予測を出す日を決める もう1つ重く見たのが「その日に何が分かっていたか」です。T月の失業率は T+1月の月末に、有効求人倍率と同じ日に公表されます。景気動向指数はそれより後です。そこで予測を出す日を「T月の失業率が公表された日」とし、 失業率・有効求人倍率・新規求人数・消費者態度指数:T月まで CI・鉱工業生産・労働投入量:T−1月まで だけを使いました。特徴量を作る関数では、これをずらし幅で表しています。 def make_features(d, lag_ci=1, lag_job=0): """T月の行に、T月の公表時点で使える特徴量を並べる(lag_job=-1 は『まだ公表されていない T+1 月の求人』を使う=リーク)""" 評価のしかた:一度の分割ではなく、ローリング 学習とテストを一度だけ分ける方法も考えましたが、それだとテスト期間の景気の局面に結論が引きずられます。予測の対象月が 2005年1月〜2026年8月(1か月先260回・3か月先258回)になるように、毎月その時点までのデータだけで予測を出し直すローリング評価にしました。学習は1985年7月からの拡張窓です。 モデルの選び方 モデル 入れた理由 AR(失業率だけ、ARIMA(2,1,0)) 失業率自身の動きだけでどこまでいけるか SARIMAX AR に前月の求人の変化を足すと何が変わるか ElasticNet 22個の特徴量を、係数を縮めながら線形で使う LightGBM 同じ特徴量で、非線形や交互作用を拾えるか 平均(3モデル) 1つのモデルに賭けない場合 「勝った」の判定:Diebold–Mariano 検定 MAE が少し小さいだけでは偶然かもしれません。2つの予測の誤差の差が0と言えるかを、Diebold–Mariano 検定(絶対誤差、HAC、Harvey らの小標本補正)で見ました。3か月先の予測は誤差が重なり合うので、その分を分散に入れています。 3. 結果 1か月先 MAE 前月の値比 3か月先 MAE 前月の値比 3か月先の向きの一致率 前月の値 0.083 1.00 0.128 1.00 26% AR 0.085 1.03(悪い、p=0.03) 0.130 1.02 27% SARIMAX 0.086 1.04(悪い、p=0.01) 0.131 1.02 27% ElasticNet 0.083 1.00 0.109 0.85(p=0.01) 47% LightGBM 0.088 1.05 0.114 0.89(p=0.09) 53% 平均(3モデル) 0.083 1.00 0.111 0.87(p=0.002) 48% 1か月先では、ARIMA 系は前月の値より有意に悪く、機械学習のモデルも並ぶのがやっとでした。3か月先になると、求人の情報を使うモデルが前月の値を下回り、向きの一致率も26%から47〜53%に上がりました。 4. 結論を崩そうとして試したこと 3か月先の「15%減った」を崩しにいく確かめを、03b_頑健性.py にまとめました。 チェック 何を疑ったか ElasticNet LightGBM 基本 ― 0.85 0.89 学習を直近15年だけに 古い時代の関係に頼っていないか 0.82 0.95 失業率の過去だけ 効いているのは本当に求人の情報か 1.05 1.07 未公表の T+1 月の値を使う(リーク) 公表タイミングの扱いで結論が変わるか 0.85 0.91 コロナ期(2020年3月〜21年)を除く 特殊な時期に引っ張られていないか 0.87(p=0.04) 0.91 (数字は前月の値の MAE を1としたときの比) 動いたところと、動かなかったところを分けて見ます。 動かなかった:直近15年・コロナ期を除いても、ElasticNet は前月の値を下回ったままでした。期間別でも、2005〜09年、2010〜20年2月、2022年以降のすべてで、ElasticNet か LightGBM が前月の値を下回りました。 大きく動いた:求人と景気の情報を外すと、3か月先でも前月の値より5〜7%悪くなりました。改善のもとはモデルの複雑さではなく、求人の情報が失業率より少し先に動くことでした。 ほとんど動かなかったのが意外だった:公表前の翌月の求人倍率を入れても、ElasticNet は 0.85 → 0.85 でした。求人の情報は「その月の値」より「ここ数か月の流れ」として効いていると読んでいます。 比べる相手を変えると、結論はいくらでも良く見える いちばん学びが大きかったのは、季節調整前の原数値で予測した確かめです。原数値では前月の値の MAE が 0.213 に広がり、SARIMA(1,1,0)(0,1,1)12 は前月の値比 0.76、ElasticNet は 0.62 と「楽に勝てて」見えます。 ところが ElasticNet の誤差 0.132pt は、季節調整値で前月の値をそのまま使った場合(0.128pt)とほぼ同じでした。原数値の前月の値は季節の動きを無視しているので負けやすく、モデルは季節を当てているだけです。前年同月の動き+直近の差を相手にすると、その MAE は 0.200pt でした。比べる相手の選び方しだいで、同じモデルの評価が大きく変わる例として残しています。 コロナ期の外れ方 2020年2月の2.4%から7月の2.9%への上がり始め(対象月3〜7月)は、どのモデルも3か月前には0.1〜0.4ポイント低く予測しました。有効求人倍率の落ち込みも同じ4〜6月で、3か月前には手がかりがありませんでした。求人が急に減ったあとの8〜9月は、ElasticNet が0.2ポイント以上高く予測しています。過去の不況の関係が、雇用調整助成金などで解雇が抑えられた今回はそのまま当てはまらなかった、というのが元記事での見立てですが、このデータでは確かめていません。 5. 言えないこと 予測が当たることと、失業の仕組みが分かったことは別です。重要度(SHAP や係数)は予測に使われたことを示すだけで、因果ではありません。 失業率は標本調査の推計値で、月々の値には調査の誤差があります。1か月先が当たらないのは、モデルの力不足だけでなく、この誤差の影響もあります。 季節調整値と景気動向指数の構成系列は、あとから改定されます。2026年10月時点の値で予測しており、当時実際に公表されていた値(リアルタイムのデータ)で予測した場合とは少し違います。 コロナ期の外れの理由は、このデータでは確かめていません。 6. コードと元記事 コード・結果・図:github.com/takayuki-0127/japan-open-data-notes/tr… src/03_分析.py(ローリング予測・DM 検定)、src/03b_頑健性.py(頑健性チェック) note:失業率を来月まで予測できるか? 4つのモデルを21年分のローリング予測で比べると、1か月先は「前月の値」に勝てず、3か月先は求人の情報で誤差が15%減った 出典:総務省統計局「労働力調査」、厚生労働省「一般職業紹介状況」(e-Stat)、内閣府 経済社会総合研究所「景気動向指数」を加工して作成

  24. Thanks for this: that review though doesn’t say anything negative about the program AFAICT? There’s also a GitHub project for the C64 listing(s) at HAnthonyHoyt/c64-dungeon-of-doom .

  25. X@addy_oz · 8 views

    @reatools Wild run! Inspired by REA, I re-built a REA skill with recursive self learning, so it keeps building till the task is done. Give it a spin! Speedrunlab/reverse-engineer-anything-self-learning-loop

  26. YouTubegithubrepo_cloud · YouTube description · 13 likes · 420 views

    🏆 [GitHub Repo of the Day] OpenMAIC: The Free Tool Taking Over GitHub! #shorts Discover THU-MAIC/OpenMAIC: Open Multi-Agent Interactive Classroom Get an immersive, multi-agent learning experience in just one click 💬 Comment "OPENMAIC" below for the direct link, or grab it from the links below: 👉 Interactive Star History & Live Analysis: githubrepo.cloud ⭐ Embed Live Verified Badges in your README: githubrepo.cloud 🔗 Direct GitHub Repository: THU-MAIC/OpenMAIC 📊 Repository Specs: ⭐ Stars: 42,486 🍴 Forks: 6,540 💻 Language: TypeScript 📜 License: MIT #shorts #openmaic #ai #artificialintelligence #machinelearning #deeplearning #python #datascience #llm

  27. FastF1 3.9.0 from theOehrly now needs an F1TV login. Formula 1 put auth on its data APIs this month, so tokens expire about every four days. If your notebooks broke last week, this is why. github.com/theOehrly/Fast-F1/releases/tag/v3.9.0

  28. X@gitrepos · 7 views

    LatentMAS ⭐ 1.2k LatentMAS is a framework for developers that runs multi-agent reasoning in latent space. 🔗 Gen-Verse/LatentMAS #opensource t.co

  29. X@JeremyCMorgan · 161 views

    FastF1 3.9.0 from theOehrly now needs an F1TV login. Formula 1 put auth on its data APIs this month, so tokens expire about every four days. If your notebooks broke last week, this is why. github.com/theOehrly/Fast-F1/releases/tag/v3.9.0

  30. 県境の隣どうしで最低賃金の影響を比べる設計と、「差が見えない」をどう確かめたか 問い 最低賃金は都道府県ごとに決まります。県境をはさんで隣り合う市区町村どうしで比べたとき、最低賃金がより大きく上がった側で、飲食・小売の従業者の伸びは小さかったか。これを2016年と2021年の経済センサスで調べました。 結論は、はっきりした関係は見えなかった、ただしそれは「影響がない」ではなく「この設計では見分けられない」だった、というものです。飲食+小売の弾力性は1.41(95%区間 −1.96〜+4.78)でした。 この記事では結果よりも、「なぜこの比べ方を選び、差が見えなかったときに何を確かめたか」という設計の側を書きます。実装の細かいところは Qiita に、結果の読み方は note に分けています。 設計1:なぜ「県境の隣どうし」を比べるのか 最低賃金と雇用の関係を見る方法は、ほかにもあります。候補を並べると次のとおりです。 候補 よい点 困る点 47都道府県のパネルで差の差(年ごとの変化を比べる) 年数が多く取れる 最低賃金が高い県は大都市が多く、景気の動きそのものが違う 全市区町村の横断回帰 数が多い 最低賃金は県単位なので、実質47個の違いしかない。地域の違いが混ざる 県境をはさんだ隣どうしを比べる(境界不連続デザイン) 隣どうしは景気・気候・交通がほぼ同じで、残る違いを制度の差と見やすい 使えるのは境界の町だけ。最低賃金の差が小さいと見分けにくい 都道府県のパネルでの分析は、別の記事(F01)で一度やっています。ただ都道府県単位では、最低賃金が高い県と低い県で景気の動きそのものが違う可能性が残ります。隣どうしなら、その違いをかなり小さくできます。この「境界で比べる」方法は、アメリカの最低賃金の研究でもよく使われています。 そこで、県の違う2つの市区町村が境界線を共有していれば「接している」として、724組のペア(656市区町村、境界は87本)を作りました。 設計2:何と何の差を取るか ペアの中の差 ペアの A と B について、「従業者の伸びの差」を「最低賃金の上がり方の差」で回帰しました。ペアの中で差を取るので、隣どうしに共通の景気や気候は消えます。 伸びで比べたのは、2021年の水準だけで比べると、もともとの産業構造の違い(観光地か住宅地か、など)がそのまま入るからです。水準での比較は頑健性チェックの1つとして残しました。 誤差を「境界ごと」にまとめる 同じ県の組み合わせ(たとえば東京都と山梨県)にある複数のペアは、どれも同じ最低賃金の差を持っています。724組を独立なデータとして扱うと、実質的な情報量を多く見積もりすぎて、区間が狭くなります。そこで、誤差は境界(87本)ごとにまとめて計算しました。 r = mod.fit(cov_type="cluster", cov_kwds={"groups": pd.factorize(d.seg)[0]}) 対照に製造業を置く もう1つの比べ方として、最低賃金の影響を受けにくいはずの製造業を対照に置きました。最低賃金の影響が出るなら、まず飲食・小売に出て、製造業には出にくいはず、という前提です。同じ市区町村の中で「飲食+小売の伸び − 製造業の伸び」を取る三重差にすると、その町全体の景気の動きをもう一段消せます。 設計3:調査日と最低賃金の時点をそろえる 経済センサスの調査日は6月1日で、最低賃金の改定は毎年10月ごろです。そのため、2016年6月の従業者には2015年度の額、2021年6月には2020年度の額を合わせました。ここを1年ずらすと、まだ効いていない改定額で比べることになります。 何が分かったか 産業(従業者) 弾力性 95%区間 宿泊・飲食 0.31 −3.30〜+3.93 卸売・小売 4.09 −0.10〜+8.29 飲食+小売 1.41 −1.96〜+4.78 製造業(対照) 2.72 −0.12〜+5.55 全産業 0.26 −1.55〜+2.07 飲食+小売 − 製造業 −1.12 −4.97〜+2.73 どの行も区間は0をまたぎました。気になったのは、対照のはずの製造業が、小売と同じプラスの向きに出ていることです。最低賃金が多く上がったのは水準の低い県の側なので、産業に関係なく「その側の地域で雇用が伸びた」動きを拾っている可能性があります。三重差にすると向きは逆(−1.12)になり、やはり0をまたぎました。 頑健性チェック:何を変えて、結果がどう動いたか 「差が見えない」という結果は、設定の選び方しだいで簡単に作れてしまいます。そこで、結果を変えそうな選択を1つずつ変えました。 何を疑ったか 変えたこと 弾力性(95%区間) 大都市圏の中の境は、通勤でつながりすぎている 1都3県・京阪神・中京の中の境を除く −1.15(−5.00〜+2.70) 小さな町の振れに引きずられている 人口で重みをつける 0.83(−0.31〜+1.97) 差がほとんどない境が薄めている 最低賃金の差が20円以上のペアだけ 1.46(−2.00〜+4.92) 外れ値の丸め方で決まっている 丸めない 1.54(−1.97〜+5.04) 従業者ではなく店の数が動いている 飲食の事業所数で見る 3.93(−0.01〜+7.87) ペアが少なすぎる 中心が20km以内のペアも入れる(1,995組) 1.46(+0.34〜+2.57) 水準で比べると違う 2021年の人口あたり従業者で比べる 0.51(−0.36〜+1.39) ほとんどの設定で区間は0をまたぎ、傾きの符号も設定によって入れ替わりました。 1つだけ、20km以内のペアまで広げたときに区間が0を外れました。ただし、向きは「最低賃金が多く上がった側で雇用が伸びた」で、製造業も同じ向きに動いています。ペアを広げるほど「隣どうし」から離れ、地域全体の違いが入りやすくなります。この1行を最低賃金の効果とは読まず、地域の動きの違いを拾っていると考えました。 また、境界ごとに差の向きをランダムに入れ替える並べ替え検定(2,000回)でも、p 値は0.44でした。クラスタが87と多くないので、標準誤差の近似だけに頼らないために入れています。 いちばん大事だった確認:この設計で、そもそも見つけられたか 結果が0をまたいだとき、「効果がなかった」と「見分けられなかった」は区別しなければなりません。そこで、最低賃金の差そのものを見直しました。 水準の差は中央値33円、最大175円あります。ところが、2015→20年度の上がり方はどの県も11.1〜13.6%の範囲で、ペアの中の差は最大でも1.8ポイントでした。この時期、最低賃金はどの県もほぼ同じ金額ずつ上がったので、率で見るとほとんどそろっていたのです。 この散らばりで80%の確率で見つけられる弾力性を計算すると、約±4.8でした。海外の研究でよく報告される大きさは0〜−0.3程度です(頑健性の図の緑の帯)。同じくらいの影響が日本にあったとしても、この設計ではまったく見分けられません。 県境で比べるなら、地域の改定額の差が開いた年をねらうこと、毎年の雇用のデータ(雇用保険の事業所データなど)を使うことが次の課題です。 言えないこと 「最低賃金は雇用に影響しない」とは言えません。ペアの中の上がり方の差が小さすぎて、ありそうな大きさの効果を見分けられない設計でした 経済センサスは2016年と2021年の2時点だけで、それより前の動きがペアの中でそろっていたか(事前トレンド)を確かめられません 2021年6月はコロナの最中で、県ごとの営業制限の違いが飲食の雇用に混ざっています 市区町村をまたいで通勤する人の影響、個人の賃金・労働時間・パートの割合は分かりません。従業者数は事業所の所在地で数えた民営の数です コードと記事 コード・集計結果・図:github.com/takayuki-0127/japan-open-data-notes/tr… 01_pairs.py(ペア)→ 02_census.py(従業者数と最低賃金)→ 03_reg.py(推定・頑健性・並べ替え検定)→ 04_図.py note の記事(結果の読み方):note.com 出典:独立行政法人統計センター「SSDSE」SSDSE-A-2021・SSDSE-A-2026(元は総務省・経済産業省「経済センサス‐活動調査」、総務省「国勢調査」)、厚生労働省「地域別最低賃金の全国一覧」、国土交通省「国土数値情報(行政区域データ)」をもとにした smartnews-smri/japan-topography(CC BY 4.0)を加工して作成

  31. YouTubeExplain Like I Care · YouTube description · 1 like · 1 comment · 10 views

    Git vs GitHub Explained for Beginners Git is save points for your code, and GitHub is the cloud save where people share them. Here's what each one does, how a 2005 falling-out led Linus Torvalds to write Git in about ten days, and why it matters if you build things with an AI. 0:00 Two names, one mix-up 0:21 Save points 0:31 What a save holds 0:46 You choose when 1:01 A second save slot 1:15 The cloud save 1:30 Built on Git 1:48 A free tool, for a while 2:02 He typed "help" 2:21 Ten days 2:35 Niche, then everywhere 2:54 The catch 3:15 Who gets to use the code 3:30 The AI's own undo 3:58 Watch what you share 4:22 Keep it private SOURCES The story Stack Overflow Developer Survey 2022: survey.stackoverflow.co Pro Git, "What is Git?": git-scm.com GitHub Docs, "About GitHub and Git": docs.github.com Microsoft to acquire GitHub for $7.5 billion (2018): news.microsoft.com GitHub Octoverse 2026: github.blog History Pro Git, "A Short History of Git": git-scm.com LWN on the end of BitKeeper for Linux (2005): lwn.net Git's first commit, 7 April 2005: github.com/git/git/blob/e83c5163316f89bfbde7d9ab2… Linux Foundation, "10 Years of Git: An Interview with Linus Torvalds": linuxfoundation.org Outside views MIT's Gitless project: sdg.csail.mit.edu xkcd 1597, "Git": xkcd.com Software Freedom Conservancy, "Give Up GitHub": sfconservancy.org What you can do Cursor, checkpoints: cursor.com Claude Code, checkpointing: code.claude.com GitGuardian, State of Secrets Sprawl 2026: gitguardian.com GitHub Docs, removing sensitive data: docs.github.com Narrated with an AI copy of my own voice. Animations built in code. What should I explain next? Put it in the comments. #Git #GitHub #Explained — Explain Like I Care: big ideas, explained like you care. Subscribe: youtube.com

  32. YouTube거북이 버프 turtle buff · YouTube description · 9 likes · 1 comment · 930 views

    깃허브 프로그램 깔기 전 무조건 이 영상 보세요 | 잘못 깔면 컴퓨터 통째로 털립니다 소통방 무료 전자책 5권: open.kakao.com 제가 쓰는 AI 목소리 도구 · 일레븐랩스: try.elevenlabs.io 깃허브 주소 한 줄과 부탁하는 말 한 문장이면 AI가 설치까지 해 줘요. 0:00 인트로 · 명령어 몰라도 괜찮아요 0:35 잠깐 인사 · 카톡 소통방 1:17 1강 AI가 대신 까는 원리 2:30 2강 클로드에게 맡기기(실제 화면) 4:45 3강 막혔을 때 5:50 4강 안전 규칙 5 7:08 마무리 부탁하는 말 microsoft/markitdown 이 프로그램을 내 맥에 깔아서, 이 폴더의 메뉴판.pdf 를 글로 바꿔 줘. 명령을 실행하기 전에 하나씩 나한테 물어봐. 출처: markitdown 공식 저장소 README, 가짜 저장소 보도 bleepingcomputer.com 문의: mvcompany8500@gmail.com #깃허브 #클로드 #AI설치 [id] Wajib tonton video ini sebelum instal GitHub|Salah instal bisa bikin komputer Anda diretas habis-...

  33. X@Dave_DotNet · 1 like · 12 views

    @jerrynixon Yeah catch it and see if it occurs much. Longer term I'm hoping this get this into EF though -> efcore#10878

  34. X@Tajchert · 34 views

    @herdrdev Flocket is mobile client for #Herdr tajchert/flocket Feel free to use Feel free to contribute Feel free to fork

  35. Redditu/livia2lima · r/linuxupskillchallenge · 12 points

    Day 2 - Basic navigation - Lesson video - Complementary video: File System Hierarchy - Complementary video: Day 2 Extras - pushd/popd/dirs INTRO Most computer users outside of the Linux and Unix world don't spend much time at the command-line now, but as a Linux sysadmin this is your default working environment - so you need to be skilled in it. When you use a graphic desktop such as Windows or Apple's macOS (or even the latest Linux flavors), then increasingly you are presented with simple "places" where your stuff is stored - "Pictures" "Music" etc but if you're even moderately technical then you'll realize that underneath all this is a hierarchical "directory structure" of "folders" (e.g. C:\Users\Steve\Desktop on Windows or /Users/Steve/Desktop on macOS - and on a Desktop Linux system /home/steve/Desktop) From now on, the course will point you to a range of good online resources for a topic, and then set you a simple set of tasks to achieve. It’s perfectly fine to google for other online resources, refer to any books you have etc - and in fact a fundamental element of the design of this course is to force you to do a bit of your own research. Even the most experienced sysadmins will do an online search to find advice for how to use commands - so the sooner you too get into that habit the better! YOUR TASKS TODAY - Find the documentation for the commands we used so far - demo - Navigate between directories, then create, list, move and delete files - demo RTFM This is a good time to mention that one of the many advantages of Linux is that it's designed to let you know the system, to let you learn how to use it. The documentation available in form of text manuals, guides and forums is where you will spend most of your time during this journey. Whereas proprietary systems have some free documentation, you see much more frequently the use of paid customer support to fix issues or find how a particular task can be executed. Although you can also do this with Linux (Canonical, RedHat and SuSE are examples of companies that offer support in the same fashion), this is most likely not the case. And you are here to learn, so... Which leads us to the famous acronym RTFM. Reading the manual is the first thing you should do when you're learning a command. We will go through the many ways to obtain that information but if at the end of that search you need more insight, you can always ask a well written question in forums and other communities. Starting with the man command. Each application installed comes with its own page in this manual, so that you can look at the page for pwd to see the full detail on the syntax like this: man pwd You might also try: man cp man mv man grep man ls man man > Note about Ubuntu Minimized - if you're using a [Local Server/VM](00-Local-Server.md): > because this is a reduced/stripped-down version of Ubuntu Server, unfortunately the man-db > package will not be installed by default, and you won't have the manual pages available. To > fix this without unminimizing it, just install the required packages with > sudo apt install man-db manpages manpages-dev As you’ll see, these are excellent for the detailed syntax of a command, but many are extremely terse, and for others the amount of detail can be somewhat daunting! And that's why tldr is such a powerful tool! You can install it with snap install tldr or follow their wiki for more options. $ tldr pwd pwd Print name of current/working directory.More information: https://www.gnu.org/software/coreutils/pwd. - Print the current directory: pwd - Print the current directory, and resolve all symlinks (i.e. show the "physical" path): pwd -P If you know a keyword or some description of what the command is supposed to do, you can try apropos or man -k like this: $ apropos "working directory" git-stash (1) - Stash the changes in a dirty working directory away pwd (1) - print name of current/working directory pwdx (1) - report current working directory of a process $ man -k "working directory" git-stash (1) - Stash the changes in a dirty working directory away pwd (1) - print name of current/working directory pwdx (1) - report current working directory of a process But you'll soon find out that not every command has a manual that you can read with man. Those commands are contained within the shell itself and we call them builtin commands. There are some overlapping (i.e. builtin commands that also have a man page) but if man does not work, we use help to display information about them. $ man export No manual entry for export $ help export export: export [-fn] [name[=value] ...] or export -p Set export attribute for shell variables. Marks each NAME for automatic export to the environment of subsequently executed commands. If VALUE is supplied, assign VALUE before exporting. Options: -f refer to shell functions -n remove the export property from each NAME -p display a list of all exported variables and functions An argument of `--' disables further option processing. Exit Status: Returns success unless an invalid option is given or NAME is invalid. The best way to know if a command is a builtin command, is to check its type: $ type export export is a shell builtin And lastly, info reads the documentation stored in info format. NAVIGATE THE FILE STRUCTURE - Start by reading the manual: man hier - / is the "root" of a branching tree of folders (also known as directories) - At all times you are "in" one part of the system - the command pwd ("print working directory") will show you where you are - Generally your prompt is also configured to give you at least some of this information, so if I'm "in" the _/etc_ directory then the prompt might be steve@202.203.203.22:/etc$ or simply /etc: $ - cd moves to different areas - so cd /var/log will take you into the /var/log folder - do this and then check with pwd - and look to see if your prompt changes to reflect your location. - You can move "up" the structure by typing cd .. ( "cee dee dot dot ") try this out by first cd'ing to /var/log/ then cd .. and then cd .. again - watching your prompt carefully, or typing pwd each time, to clarify your present working directory. - A "relative" location is based on your present working directory - e.g. if you first cd /var then pwd will confirm that you are "in" /var, and you can move to /var/log in two ways - either by providing the full path with cd /var/log or simply the "relative" path with the command cd log - A simple cd will always return you to your own defined "home directory", also referred to as ~ (the "tilde" character) [NB: this differs from DOS/Windows] - What files are in a folder? The ls (list) command will give you a list of the files, and sub folders. Like many Linux commands, there are options (known as "switches") to alter the meaning of the command or the output format. Try a simple ls, then ls -l -t and then try ls -l -t -r -a - By convention, files with a starting character of "." are considered hidden and the ls, and many other commands, will ignore them. The -a switch includes them. You should see a number of hidden files in your home directory. - A note on switches: Generally most Linux command will accept one or more "parameters", and one or more "switches". So, when we say ls -l /var/log the "-l" is a switch to say "long format" and the "/var/log" is the "parameter". Many commands accept a large number of switches, and these can generally be combined (so from now on, use ls -ltra, rather than ls -l -t -r -a - In your home directory type ls -ltra and look at the far left hand column - those entries with a "d" as the first character on the line are directories (folders) rather than files. They may also be shown in a different color or font - if not, then adding the "--color=auto" switch should do this (i.e. ls -ltra --color=auto) BASIC DIRECTORY MANIPULATION - You can make a new folder/directory with the mkdir command, so move to your home directory, type pwd to check that you are indeed in the correct place, and then create a directory, for example to create one called "test", simply type mkdir test. Now use the ls command to see the result. - You can create even more directories, nesting inside directories, and then navigate between them with the cd command. - When you want to move that directory inside another directory, you use mv and specify the path to move. - To delete (or remove) a directory, use rmdir if the directory is empty or rm -r if there still any files or other directories inside of it. BASIC FILE MANIPULATION - You can make new empty files with the touch command, so you can explore a little more of the ls command. - When you want to move that file to another directory, you use mv and specify the path to move. - To delete (or remove) a file, use rm. WRAP Being able to move confidently around the directory structure at the command line is important, so don’t think you can skip it! However, these skills are something that you’ll be constantly using over the twenty days of the course, so don’t despair if this doesn’t immediately “click”. EXTENSION If this is already something that you’re very familiar with, then: - Learn about pushd and popd to navigate around multiple directories easily. Running pushd /var/log moves you to to the /var/log, but keeps track of where you were. You can pushd more than one directory at a time. Try it out: pushd /var/log, pushd /dev, pushd /etc, pushd, popd, popd. Note how pushd with no arguments switches between the last two _pushed_ directories but more complex navigation is also possible. Finally, cd - also moves you the last visited directory. RESOURCES - Difference between help, info and man command - GNU Texinfo - Explore the Linux file system - Linux File System - Simple Terminal Commands on Ubuntu - Solaris Unix Commands PREVIOUS DAY'S LESSON - Day 1 - Get to know your server Some rights reserved. Check the license terms here

  36. Claude-MemはSIerで安全に使える?仕組みとプロジェクト間のメモリ分離をコードから調査 はじめに zenn.dev 異なるコーディングエージェントの情報を共有できるclaude-memというライブラリがあるみたいです。 Claude-Memは、コーディングAgentの作業履歴を自動収集し、AIで圧縮して、次のセッションで使えるようにするOSSです。 便利そうですが、セキュリティリスクは検討しないといけません。 同じ開発者が顧客Aと顧客Bの案件を並行して担当していたとき、顧客Aの設計やコードの情報が顧客BのAIの回答に紛れ込まないでしょうか。 本記事では仕組みを整理したうえで、「PJごとに記憶が分類される」ことと「PJをまたいで情報を読めない」ことの違いを中心に、ソースコードと公式ドキュメントからPJの案件情報が混在しないかを確認します。 結論 通常のセッション開始時のコンテキスト注入は、デフォルトでは現在のプロジェクトを対象にする。 保存先はローカルWorker構成の場合、同じOSユーザーの ~/.claude-mem/ 配下のSQLiteなど。複数PJの記録が同じ保存基盤に入る。 PJ名による絞り込みはアクセス権限ではない。 ローカルMCPの検索操作では project を省略でき、検索が他PJのデータに及ぶ経路がある。明示的に別PJを指定する操作も、企業のテナント認可としては扱われない。 共有の制御は存在する。 名前付きEnvironmentの inherit、クラウド同期、TeamBrainなどがある。ただし、それぞれ「同一端末内の検索範囲」「同一アカウントの端末間同期」「チームへの選択的共有」と意味が異なる。 受託開発での推奨は、顧客単位の実行環境・保存領域・外部通信を分けること。 通常開発は管理された既存PCまたはWindows 365、高機密案件では案件専用Azure VMなどを候補にする。設定で current や inherit: [] を指定しただけでは、厳密な顧客間分離の保証にならない。 1. Claude-Memは何を記憶しているのか Claude-MemはClaude CodeなどのライフサイクルイベントをHookで受け取り、作業の途中で発生した情報を整理して保存する「外付けの永続メモリ」です。 処理を大きく分けると次のようになります。 UserPromptSubmitで指示を、PostToolUseなどでファイル操作・コマンド実行・結果を収集する。 Workerが要約モデルを使って「どんな問題を解き、何を決定し、何を変更したか」をObservationとして圧縮する。 観測結果、セッション要約、ユーザープロンプトをSQLiteに保存する。FTS5でキーワード検索でき、Chromaを使えば意味検索もできる。 次のセッション開始時や検索要求時に、必要な過去情報をAIのコンテキストへ戻す。 検索は、まず短い結果一覧を取得し(search)、前後の経緯をたどり(timeline)、必要な記録だけ詳細取得する(get_observations)という段階的な方式です。すべての履歴を毎回LLMへ詰め込まない設計になっています。 ここで重要なのは、LLMに渡す情報を小さくすることと、保存されるデータが少ないことは同義ではないという点です。要約された記憶とは別に、プロンプトや作業由来の情報もローカルに残ります。 2. 「PJごとのメモリ」はどこで分離されているか ローカルWorker構成を、同一OSユーザーが複数の案件を扱う状況で考えてみます。 PJ単位のラベルやフィルターはありますが、PJごとに自動で独立したDBが作成されるわけではありません。 現行のローカルWorkerは、同じユーザーデータ領域に複数PJの記憶を保持できます。 2-1. プロジェクト名をどう決めるか 基本の識別方式はフォルダやGitリポジトリに基づきます。現行実装には次のルールがあります。 開発環境 主な識別方法 SIerでの注意 通常のGitリポジトリ Gitルートフォルダ名(標準のpathモード) 顧客が違っても同じフォルダ名なら衝突しうる Gitのoriginあり git-remoteモードなら org/repo フォルダ移動に強いが、ホスト名までは識別子に入らない Git worktree 親PJとworktreeを関連付け、親の記憶も読める ブランチ単位の完全分離ではない Git submodule 親PJ配下の識別子を使い、親の記憶も参照 サブモジュール単体の閉域を意味しない Git管理外 カレントディレクトリ名、マーカーファイル等 フォルダ名の重複や移動に注意 名前付きEnvironment パスのglobパターンにより指定名へ割り当て 複数のフォルダを意図的に同じメモリへまとめられる たとえば、二つの顧客案件のリポジトリがどちらも backend というフォルダ名なら、標準の命名では識別名が重複するリスクがあります。git-remote を利用すれば軽減できますが、異なるGitホスト上の同一 org/repo が区別されないケースも設計上考慮が必要です。 2-2. デフォルトの自動注入は「現在のPJ」 CLAUDE_MEM_CONTEXT_PROJECTS の標準値は current です。通常の SessionStart では、現在のcheckoutに対応する履歴を読み込むよう設計されています。all にすると複数PJを対象にしたコンテキスト注入が可能です。 つまり、何も設定しなければ全PJの全履歴が毎回AIに注入される、という仕様ではありません。 ただしこれは「どの情報を注入するか」の既定動作であり、アクセス制御ではありません。 同様に、CLAUDE_MEM_SESSION_START_INCLUDE_ALL_SOURCES=false は、Claude Code・Codexなど複数のハーネスをまたぐ自動注入を制限する設定です。これもユーザーや顧客ごとの閲覧権限を実現するものではありません。 2-3. 意外に重要:検索ではPJスコープが省略できる ソースコード上、ローカルWorker向けのMCP search / get_observations などは project が任意引数です。検索側はPJ条件が渡された場合にSQLの絞り込みを組み立てますが、渡されない場合はそのPJ条件を付けません。 さらに withCheckoutProjects() は、現在のcheckout名が明示的に指定された場合には継承キーを補完しますが、スコープ指定がない検索を強制的に現在のcheckoutへ閉じる関数ではありません。 そのため、次の二つは分けて評価する必要があります。 セッション開始時に「顧客Aの記憶だけが自動表示される」こと 顧客Aの環境から「顧客Bの記憶を検索・取得できない」こと 前者はデフォルト動作として期待できますが、後者をローカルWorkerのPJフィルターだけで保証するのは危険です。 同じユーザープロセスに対する操作を悪用したメモリ汚染や、誤った検索指示による情報の混入も想定すべきです。 この問題はGitHub Issue #3764 でも指摘され、より広いPJ識別・検索スコープの改善Issue #3608へ集約されています。旧版での指摘をそのまま現行版の脆弱性と断定するのではなく、最新コードでも任意のPJ指定を受け付ける経路があるという点を導入試験の対象にします。 3. 共有はどこまでできるのか 「共有」と一口に言っても、Claude-Memには少なくとも四つの異なる仕組みがあります。 仕組み 共有される範囲 標準動作・境界 同じPJ名・Git worktree 同一ユーザー内の関連PJ履歴 親の記憶などを引き継げる。認可境界ではない CLAUDE_MEM_PROJECT_ENVIRONMENTS 複数ディレクトリを共通PJ名にまとめる inheritで読み込む他PJのキーを選べる。検索権限とは別 Cloud Sync 同一cmem.aiアカウントの端末間 有効時はObservation・セッション要約・プロンプト等がSync Hubへ送信される TeamBrain チームメンバーが選んだPJ 共有するPJとbroadcastを選択。ローカルの個人作業ボードとは別 3-1. 名前付きEnvironmentによる「共通」と「個別」 たとえば次のように、案件ごとに名前付きEnvironmentを定義できます。 { "CLAUDE_MEM_PROJECT_ENVIRONMENTS": [ { "name": "customer-a-app", "patterns": ["~/work/customer-a/app/"], "inherit": [] }, { "name": "customer-b-app", "patterns": ["~/work/customer-b/app/"], "inherit": [] } ] } inherit: [] は、フォルダやGit名から自動導出された別の記憶キーをデフォルトの読み込み対象に含めず、そのEnvironmentの記憶を中心にする指定です。 反対に、承認済みの共通知識を読み込みたい場合、次のような構成も可能です。 { "name": "customer-a-app", "patterns": ["~/work/customer-a/app/**"], "inherit": ["shared-practices"] } これは「顧客Aの記憶 + shared-practices として保存した記憶」をデフォルトの参照対象にする考え方です。shared-practices の記録は別途、対応するPJ名として保存されている必要があります。 ただし公式ドキュメントにも、inherit はデフォルトのコンテキスト選択であってアクセス権限ではないと明記されています。 また過去に実施したPJのmergeは引き続き効く可能性があるので、設定変更だけで履歴が切り離されたと判断してはいけません。 3-2. TeamBrainは「すべて自動でチーム共有」ではない TeamBrainは、チームメンバーが共有するPJを選択し、作業リストや関連する発見を共有ワークスペースに表示する機能です。通常の個人用 My Work のレビュー記録がそのままチームへ統合される仕組みではありません。 実装では、共有するPJの選択が空配列なら「共有なし」、null なら「すべてのPJを共有」という区別が見られます。SIerでは「今後作る案件も含めてすべて共有」の設定を誤って選ばない運用が重要です。 一方、TeamBrainの選択共有を導入しても、元となる端末上のローカルWorkerにある全履歴の認可問題が自動的に解消するわけではありません。 3-3. Cloud Syncは個人の複数端末をまたぐ Cloud Syncを有効化すると、端末上の記憶はcmem.aiのSync Hubを通じて同期されます。公式仕様では、Observation、セッション要約、ユーザープロンプト、対応時の作業状態などが対象です。 複数の顧客案件が一つのユーザーデータ領域に保存されていれば、PJを意識しない個人端末間同期の扱いも検討が必要です。顧客Aから顧客Bへの自動注入を防いだとしても、記録のコピー先やデータ管理主体の問題は残ります。 4. SIerとしてどう評価するか 利用場面 判断 理由 公開OSS・学習用環境 導入候補 機密性の低いデータで有用性を検証できる 一般的な社内開発 条件付き 送信先・端末・保存データ・更新の制御が必要 同一開発者による複数顧客の受託開発 標準構成のままでは非推奨 PJフィルターと顧客のアクセス境界が一致しない 金融機関・高機密案件 厳格な隔離が前提 個別環境・通信制御・検証済み版・監査が必要 特に見落としやすいリスクは次のとおりです。 データ収集:プロンプトのほか、ツール入力・出力、エラー、変更背景に機密情報が含まれる。<private> タグは使えるものの、タグを付け忘れた情報の保護にはなりません。自動マスキングは標準で無効なので、有効化と精度検証が必要です。 外部送信:要約時にはAnthropic、Gemini、OpenRouter、CMEM Pro、任意のOpenAI互換エンドポイントなどの設定先へ情報が渡る可能性があります。ローカルSQLiteに保存していても、推論まで端末内で完結しているとは限りません。テレメトリもデフォルトで有効です。 ローカルAPIとログ:Workerは標準でループバックにバインドしますが、同じ端末の別プロセスやポート転送、ローカルに保存されるログ・設定ファイルまで含めて保護する必要があります。 Prompt Injection:不正な文章が記憶として取り込まれると、後のセッションのAIにとって「過去の文脈」に見える可能性があります。メモリは信頼されたシステム指示ではなく、検証可能な参考情報として扱う設計が必要です。 5. SIer向けの推奨構成:既存PC/Windows 365と案件専用Azure VMを使い分ける Claude-Memのメモリを「自動で検索できるように分類する」ことと、「別顧客の情報に技術的にアクセスできない」ことは異なります。そのため、守秘義務が異なる顧客案件間の分離は、メモリの検索条件ではなく、実行環境・OS権限・保存領域・ネットワークの境界で実現する方針が良さそうです。 5-1. 機密区分別の使い分け 利用シーン 推奨する開発環境 Claude-Memの扱い 主な確認事項 公開OSS・学習・低機密PoC 既存の会社管理PC(Windows+WSL2など) ローカルで試験導入 外部通信、端末管理、ダミーデータでの検証 一般的な社内開発 既存の管理PC、またはWindows 365 Cloud PC チーム内の利用方針を定めて導入 Intune・Entra ID・条件付きアクセス、保存データ保護 通常の受託開発 顧客別に割り当てた管理PC/Windows 365、必要に応じてAzure VM 顧客ごとに保存先・認証情報・同期を分ける 複数顧客の同一Cloud PCへの混在を防ぐこと 銀行・高機密・閉域案件 顧客・案件専用Azure VM(WindowsまたはLinux)、要件によって専用VDI 専用ユーザー/VM/DBに限定。外部同期は原則無効 VNet・Private Endpoint、通信制御、ログ、破棄手順 多人数の集中管理VDIが必要 Azure Virtual Desktop(AVD)も比較対象 セッション分離と保存ボリューム分離を検証 マルチセッション時のユーザー間隔離、運用コスト Windows 365は管理された永続Cloud PCを提供し、IntuneやEntra IDと連携できる点が利点です。一方、厳格なネットワーク境界、Linuxネイティブの開発環境、案件別のリソース構成を細かく制御したい場合には、Azure VMのほうが設計しやすいことがあります。MicrosoftがWindows 365を推奨していることと、どのSI案件にもWindows 365が最適であることは同義ではありません。 5-2. 推奨アーキテクチャ この図では、AとBのメモリDBをそれぞれ別のVM内に置きます。個々のWorkerが同じローカルSQLiteを共有しないため、誤ってPJ指定を省略した検索が発生しても、別VMのDBには直ちにアクセスできません。もちろん、これはVM間の権限・ネットワーク・共有ストレージが適切に分離されていることが前提です。 実際の設計では、少なくとも以下の境界をそろえます。 実行・認証の境界:顧客ごとにOSユーザー、VM、SSH/RDPアクセス、Entra ID権限などを分離する。 データの境界:~/.claude-mem/(または CLAUDE_MEM_DATA_DIR の保存先)、ログ、ベクトルDB、バックアップ、認証情報を分離する。 通信の境界:モデルの要約送信先を許可済みのGateway/ローカル推論へ限定し、Cloud Sync、テレメトリ、未承認APIへの通信を制御する。 持ち出しの境界:案件間のメモリ同期やコピペによる移動を原則禁止し、共通化できる設計原則・障害対応手順だけをレビュー後に昇格させる。 なお、Claude-Memの外部通信を制限しても、本体のAIコーディングエージェントが使うLLMやGitHubなどの外部接続は別に管理する必要があります。さらにWindows 365を使う場合も、同じCloud PCで複数顧客案件を扱えばメモリ混在リスクは残ります。Cloud PCという製品名だけで自動的に顧客分離が実現するわけではありません。 5-3. 共通知識は「全PJの記憶を読ませる」のではなく、承認後に配布する 顧客間で再利用すべきなのは、実際の顧客名や内部API、ソースコード断片ではなく、レビューして一般化したテスト手法・設計原則・障害対応パターンなどです。CLAUDE_MEM_CONTEXT_PROJECTS=all や単一メモリDBへの集約で共有範囲を広げる代わりに、元データの守秘義務と持ち出し可否を人が確認してから共通ナレッジを作ります。 将来的に企業共通のAgent Memory基盤を作るなら、顧客・PJ・ユーザーの認可を備えたAPIを別途設け、アクセス権限と記憶の分類を独立して設計する方法が考えられます。 5-4. PoC向けの設定例 次は隔離した検証環境で、デフォルト注入と外部送信をできるだけ抑えて動作確認するための参考例です。 { "CLAUDE_MEM_CONTEXT_PROJECTS": "current", "CLAUDE_MEM_SESSION_START_INCLUDE_ALL_SOURCES": "false", "CLAUDE_MEM_WORKER_HOST": "127.0.0.1", "CLAUDE_MEM_CLOUD_SYNC_HUB_URL": "", "CLAUDE_MEM_REDACT_ENABLED": "true", "CLAUDE_MEM_REDACT_GENERIC_ENABLED": "true", "CLAUDE_MEM_PROJECT_ENVIRONMENTS": [ {"name": "customer-a-app", "patterns": ["~/work/customer-a/app/"], "inherit": []}, {"name": "customer-b-app", "patterns": ["~/work/customer-b/app/"], "inherit": []} ] } テレメトリは別途 DO_NOT_TRACK=1 または npx claude-mem telemetry disable で無効化できます。要約処理を社内推論に限定する場合は openai-compatible プロバイダーを承認済みのローカルまたは社内エンドポイントへ向け、外部へのフォールバックまで含めて通信制御で検証します。実稼働では共有DBに両案件を置くのではなく、上記の実行環境・データ保存先の分離を優先します。 ! このJSONは顧客間のセキュリティ境界を成立させる「完成済み設定」ではありません。inherit: [] は自動読み込みのスコープに関する設定であり、任意のMCP検索、ローカルDBへのアクセス、OS権限、クラウド同期済みデータなどを一括で遮断する機能ではありません。 6. 実際に検証したいテストケース 導入前には、公開情報の確認だけでなく、ダミーデータで越境検索を試すことを推奨します。 No. テスト 合格条件 1 顧客A・Bの二つのPJで異なるダミー記憶を作成 各記憶に想定どおりのPJ名が付く 2 Aのセッションを開始 Bの記憶が自動注入されない 3 Aの状態から search をPJ指定なしで実行 Bを取得できるなら、分離不足と判定する 4 get_observations にBの記憶IDを渡す Bの詳細を取得できるなら、分離不足と判定する 5 A・Bのリポジトリ名を同じにする PJ名の衝突を検出できる 6 worktree・submodule・inheritの組み合わせ 意図しない親・旧キーの記憶を読み込まない 7 EXCLUDED_PROJECTSを設定した後に検索 既存データの扱いを含め、期待した取得制限を確認する 8 Cloud SyncとTeamBrainの共有設定を変更 許可したデータだけが同期・共有される 9 架空のAPIキー・秘密文字列をツール出力に含める ローカルDB、ログ、外部リクエストで露出しない 10 AI推論先を遮断する 未承認の外部プロバイダーへ自動退避しない 11 顧客AとBを別VM/Cloud PCに配置し、AからBのメモリAPI・DBへアクセスを試す アクセスできない。共有マウントや共通バックアップにも抜け道がない 12 案件終了・担当者変更時にメモリDB、ログ、認証情報を棚卸しして破棄する 保持期間・削除証跡・クラウド同期の扱いを説明できる 以下はローカルDBのPJ別レコード件数を確認する例です。架空データのみを利用した隔離環境で実行してください。 sqlite3 ~/.claude-mem/claude-mem.db \ 'SELECT project, COUNT(*) FROM observations GROUP BY project ORDER BY project;' ローカルWorkerの実際のポートを確認したうえで、PJスコープなしの検索と、PJを指定した検索を比較できます。以下の文字列は架空の識別子です。 PORT=$(cat ~/.claude-mem/.worker.port) PJ名を渡さず検索 curl -sG "http://127.0.0.1:${PORT}/api/search" \ --data-urlencode 'query=BOUNDARY_CANARY_B' \ --data-urlencode 'limit=10' PJ Aに明示的に絞って検索 curl -sG "http://127.0.0.1:${PORT}/api/search" \ --data-urlencode 'query=BOUNDARY_CANARY_B' \ --data-urlencode 'project=customer-a-app' \ --data-urlencode 'limit=10' ポートファイルやAPIレスポンスの形式は採用版で確認してください。ここで見るべきなのは、スコープを省略した場合にどの範囲まで検索できるかです。検索でPJ Bが見えるなら、デフォルト注入がAに限定されていても顧客分離としては不十分です。 7. まとめ Claude-Memの「Hookで作業を記録し、LLMで圧縮し、検索して必要な文脈だけ再注入する」という設計は、AI駆動開発の継続性を改善するうえで有用です。Bun、SQLite、Chroma、MCPの組み合わせも、特殊なブラックボックスというより理解・検証可能な構成です。 Claude-MemにはPJ別の分類、選択的な履歴の読み込み、複数PJの意図的な共有、端末間同期、TeamBrainによるチーム共有が用意されています。しかし、ローカルWorkerのPJ指定は基本的に検索・コンテキスト選択の仕組みであり、顧客テナントの認可境界ではありません。 したがって、公開OSSや低機密の社内PoCでは試すのは良いが、複数顧客の機密案件に標準構成のまま横展開することはお勧めできません。 顧客単位でメモリ保存領域と実行環境を分け、承認済みの一般化されたナレッジだけを共通化する方法が現実的です。開発端末については通常開発なら管理された既存PCまたはWindows 365、高機密案件なら顧客専用Azure VMなどで分離することで根本的に混入をさせない構成になりそうです。 参考資料 Claude-Mem GitHub Architecture Overview 設定項目とProject Names PJ識別の実装: project-name.ts Environmentとinherit: project-environments.ts ローカルMCP: mcp-server.ts MCPのcheckoutスコープ: checkout-search-scope.ts 検索フィルター: SessionSearch.ts Cloud Sync TeamBrain Auto-Redaction Security Policy PJ識別・注入スコープ改善Issue #3608 PJ省略時のMCP検索に関するIssue #3764

  37. X@capt_asic · 9 views

    Reckoner tracks balances across 19 AI and cloud providers. Each one is a single file extending one BaseProvider class, drop it in and the dashboard picks it up. Self-hosted, GPLv3. CaptainASIC/reckoner #OpenSource #FastAPI #React #AI

  38. Redditu/gamedaylive · r/gamedaylive_dev · 1 point · 2 comments

    Game Day Thread | COL @ CHI | 2026-11-02 6:00 PM MST GameCenter: Avalanche @ Blackhawks Score: COL 5 : 2 CHI Status: Final (unofficial) Start Time: 6:00 PM MST | Venue: United Center | Networks: CHSN+, ALT Referees: TBD | Linesmen: TBD Last Update: 11/2/2026, 8:52:40 PM --- GOALS swipe→ | Per. | Time | Team | STR | Player | Shot&nbsp;Type | Assists | Clip | |---|---|---|---|--------|--------|--------|---| | 1 | 00:57 | CHI | - | #44 Wyatt Kaiser | Wrist&nbsp;shot | #8 Ryan Donato | nhl.com | 1 | 07:05 | CHI | - | #80 Roman Kantserov | Snap&nbsp;shot | #98 Connor Bedard | nhl.com | 1 | 15:23 | COL | - | #91 Nazem Kadri | Poke | #92 Gabriel Landeskog, #84 Brent Burns | nhl.com | 1 | 15:49 | COL | - | #71 Jaden Schwartz | Wrist&nbsp;shot | #13 T.J. Hughes, #7 Devon Toews | nhl.com | 2 | 13:38 | COL | PP | #91 Nazem Kadri | Tip-In | #8 Cale Makar, #29 Nathan MacKinnon | nhl.com | 2 | 19:49 | COL | - | #71 Jaden Schwartz | Tip-In | #70 Sam Malinski, #13 T.J. Hughes | nhl.com | 3 | 17:38 | COL | ENG | #7 Devon Toews | Wrist&nbsp;shot | Unassisted | - --- PENALTIES swipe→ | Per. | Time | Team | Player | Infraction | Against | Min. | |---|---|---|--------|--------|--------|---| | 1 | 02:06 | CHI | #38 Ethan Del Mastro | Interference | #91 Nazem Kadri | 2 | 1 | 10:41 | COL | #11 Brock Nelson | High-sticking | #8 Ryan Donato | 2 | 1 | 16:44 | CHI | #55 Artyom Levshunov | Elbowing | #8 Cale Makar | 2 | 1 | 16:44 | CHI | #55 Artyom Levshunov | Roughing | #88 Martin Necas | 2 | 1 | 16:44 | COL | #88 Martin Necas | Roughing | #55 Artyom Levshunov | 2 | 2 | 02:30 | COL | #91 Nazem Kadri | Cross-checking | #20 Ryan Greene | 2 | 2 | 04:27 | CHI | #11 Oliver Moore | Tripping | #13 T.J. Hughes | 2 | 2 | 09:48 | CHI | #6 Sam Rinzel | Holding | #13 T.J. Hughes | 2 | 2 | 13:10 | CHI | #98 Connor Bedard | Holding | #91 Nazem Kadri | 2 | 2 | 16:59 | COL | #47 Noah Juulsen | Cross-checking | #98 Connor Bedard | 2 | 3 | 08:02 | COL | #11 Brock Nelson | Tripping | #91 Frank Nazar | 2 --- GameDayLive is an [open source project](<Arctyc/GameDayLive>) that is not affiliated with any organization.

  39. Entities on the grid, data riding the cache line. 🕹️ Odinarcade is a 2D ECS starter kit for the Odin language: generational entity handles, structure-of-arrays components, plain-proc systems and a tiny demo CLI. Insert coin. synthalorian/odinarcade t.co

  40. Sorted 100M int64 against IPS4o across 10 dists. Won 8. All-zeros went 182,000x, sorted 14.9x, reversed 10.3x. Uniform random and exponential, we lost. Both losses are in the same table on the site. ofmagnitude.com / OrdersOfMagnitudeLLC/type1-toolkit #cpp #algorithms #performance

  41. Multipliers and weighted d-bar estimates We study some size estimates for the solution of the equation d-bar u=f in one variable. The new ingredient is the use of holomorphic functions with precise growth restrictions in the construction of explicit solutions to the equation. Comments: This is a corrected version produced after formalizing in Lean the published version. There was a missing weight in the estimate of Theorem 3 and minor typos. The formalized version is in joaquimortega/MR1949832

  42. For Macro Lovers: Could Tauto Have the World's Most Powerful Macro System? --- title: For Macro Lovers: Could Tauto Have the World's Most Powerful Macro System? published: true date: 2026-11-03 00:00:00 UTC tags: tauto,macros,dsl,formalverification canonical_url: blog.tauto.run --- Tauto combines a dependently typed proof system with a runtime featuring algebraic effects and ownership. This article introduces its macro system. “The world's most powerful” is a bold claim for a title. The aim is to bring everything I want from macros into a single design: - Add new syntax and DSLs as libraries, complete with registered formatters and syntax highlighting. - Write macros that transform code based on its types and macros that build proofs, called tactics, using the same mechanism. - Keep expansion hygienic, so macros do not capture the caller's variables. - Run untrusted macros without giving them file access, without unbounded execution, and without compromising proof soundness. Tauto on GitHub <nav aria-label="Table of contents"><ul> <li> <a href="#ordinary-functions">Macros are ordinary functions that return syntax values</a><ul></ul> </li> <li> <a href="#macro-kinds">Macro kinds and when to use them</a><ul> <li> <a href="#syntax-macros">Syntax macros: write in your own grammar</a><ul></ul> </li> <li> <a href="#untyped-macros">Untyped macros: reinterpret an expression</a><ul></ul> </li> <li> <a href="#typed-macros">Typed macros: inspect types and context</a><ul></ul> </li> <li> <a href="#tactics">Tactics: macros that construct proofs</a><ul></ul> </li> <li> <a href="#attribute-macros">Attribute macros: generate declarations</a><ul></ul> </li> <li> <a href="#generated-declarations">Why list generated declarations?</a><ul></ul> </li> </ul> </li> <li> <a href="#hygiene">Hygiene: macros do not capture the caller's names</a><ul></ul> </li> <li> <a href="#effects">Using effect analysis to contain macro execution</a><ul><li> <a href="#nontermination">What about infinite loops?</a><ul></ul> </li></ul> </li> <li> <a href="#syntax-system">A powerful syntax-macro system</a><ul> <li> <a href="#generated-ast">Write a grammar, get a typed AST and parser</a><ul></ul> </li> <li> <a href="#left-recursion">Left recursion: LL(k) and LALR(1)</a><ul></ul> </li> <li> <a href="#syntax-errors">Syntax errors report locations and expectations</a><ul></ul> </li> <li> <a href="#formatting-and-highlighting">Registering formatters and syntax highlighting</a><ul></ul> </li> <li> <a href="#embedded-expressions">Embedding Tauto expressions in a grammar</a><ul></ul> </li> <li> <a href="#proving-language-tools">Build and prove a language implementation</a><ul></ul> </li> </ul> </li> <li> <a href="#other-features">More useful properties</a><ul> <li> <a href="#expansion-tracing">Every expansion can be traced</a><ul></ul> </li> <li> <a href="#declaration-environment">Typed macros do not change the declaration environment</a><ul></ul> </li> <li> <a href="#typing-judgments">Write typing judgments in a DSL</a><ul></ul> </li> <li> <a href="#expansion-order">Macro execution is ordered by file</a><ul></ul> </li> </ul> </li> <li> <a href="#deliberate-restrictions">Deliberate restrictions</a><ul></ul> </li> <li> <a href="#design-priorities">Design priorities</a><ul></ul> </li> <li> <a href="#limits">What is not guaranteed</a><ul></ul> </li> <li> <a href="#summary">Summary</a><ul></ul> </li> </ul></nav> Macros are ordinary functions that return syntax values Tauto macros are ordinary functions , rather than programs in a separate macro or template language. They take and return syntax values, represented by AST data types such as SynExpr and SynStmt, assembled with quote { … } and $x. Calls are always explicit: NAME!(…). Whatever a macro produces, the expanded program goes through the same path as a handwritten program: the kernel and a second, independently implemented kernel. You do not need to trust the macro's generation logic to preserve type or proof soundness. Macro kinds and when to use them There are four kinds of macros. The function's input type alone determines the kind. There is no keyword such as typed macro. - Syntax macro: takes a typed AST generated from a grammar. Call it as name!(…) to introduce notation or a DSL. - Untyped macro: takes SynExpr. Call it as name!(a + b) to reinterpret an expression. - Typed macro: takes Judgement. Call it as name!(e) to transform code using its type and context. - Tactic: takes ProofStep. Call it as by name!(…): G { … } to automate proofs. Syntax macros: write in your own grammar A syntax macro parses its input using a grammar declared with syntax!. As an example, here is swap!, which swaps two variables. syntax!(swp, ```par %start Pair %% Pair: Name Name; Name: /[\p{L}_][\p{L}\p{N}_]*/; pub macro fn swap(p: swp::Pair): List(SynStmt) { let a := Syn::ident(p.name) let b := Syn::ident(p.name_2) quote stmts { let tmp := $a $a := $b $b := tmp } } The grammar lives in a fenced block tagged `par`. It automatically generates a typed AST called `swp::Pair`, which becomes the macro function's input. After `=>`, the source lists the exact kinds and names of the declarations that will be generated. You do not need to write these lists by hand: `tauto fmt --fill-generated main.taut` fills in missing lists and corrects mismatched ones in that file and the files it imports, writing the results back to source. The list is required for `syntax!`, `inductive_syntax!`, attribute macros, and other declaration-generating calls. Generating an unlisted declaration is an error, as is listing a declaration that is not generated. “Why list generated declarations?” below explains why the list remains explicit in the source. Here is the caller: import "swap.taut" var tmp := 1 var other := 2 swap!(tmp other) perform show("tmp", tmp) perform show("other", other) $ tauto macro expand main.taut var tmp := 1 var other := 2 let tmp#1 := tmp tmp := other other := tmp#1 perform show("tmp", tmp) perform show("other", other) $ tauto run main.taut tmp = 2 other = 1 The macro's temporary variable `tmp` becomes `tmp#1`, avoiding a collision with the caller's `tmp`. The `#1` is a display name; when `--write` writes the expansion back to source, it becomes an ordinary name that does not collide. This illustrates the hygiene mechanism discussed below. You can inspect expansions at any time with `tauto macro expand`. The DSL inside the backtick fences can also have its own formatter and syntax highlighting. Register the functions with `with` at the end of `syntax!`: syntax!(swp, ```par … fmt is called when tauto fmt formats the contents of a syntax literal such as swp… . tokens is called when the language server highlights it. The grammar author defines swp_fmt and swp_tokens as ordinary Tauto functions. Without registration, the contents are left unformatted and highlighting is inferred from terminal names. More details appear in “Registering formatters and syntax highlighting” below. Untyped macros: reinterpret an expression An untyped macro receives anything that parses as a Tauto expression as a syntax value, without type-checking it first. The standard library's nat! reinterprets == as propositional equality = and + as Nat::add, allowing theorem statements to look like mathematical expressions: theorem add_comm_stmt(a: Nat, b: Nat): nat!(a + b == b + a) { Nat::add_comm(a, b) } Because it runs before checking, it cannot inspect types. In return, it can accept expressions that would not otherwise type-check, such as an expression using == where that operator is not defined. Typed macros: inspect types and context A typed macro receives a checked expression as an opaque Judgement value containing its context, term, type, effect row, and variable usage. It runs only after the declaration containing the call has been checked once without macro expansion. User code never runs in the middle of type inference. This structurally rules out a cycle in which a macro inspects a type and then changes the type based on what it finds. The output is accepted only if its type is definitionally equal to the original expression's type, its effect row is a subset of the original row , and the entire declaration passes checking again. Ownership, borrowing, and linearity are also checked across the whole expanded declaration. Matching types alone is not treated as a sufficient safety check. If you also want to preserve meaning, you can choose the Proved result form, which returns a proof of equality e = e' alongside the transformation. The kernel checks that proof. Tactics: macros that construct proofs A macro taking ProofStep can be used inside a proof. The kernel checks the term it constructs against the explicitly written goal. Even if a tactic produces an incorrect proof, the kernel decides whether to accept it; the tactic itself does not need to be trusted. Succ(k) => by rewrite!(Nat::add_comm(a, k)): Succ(Nat::add(a, k)) = Nat::add(Succ(k), a) { ⊢ Succ(Nat::add(k, a)) = Nat::add(Succ(k), a) from by rewrite!(Nat::add_succ_left(k, a)) { ⊢ Succ(Nat::add(k, a)) = Succ(Nat::add(k, a)) from Refl } } rewrite! is a standard-library tactic. Since the goal is written at every step, readers can follow the proof without knowing how the tactic is implemented. Attribute macros: generate declarations Writing @name!(…) before a declaration lets a macro generate declarations. This is a separate axis from the four kinds above: “attribute macro” describes the call's position, rather than a kind determined by its input type. The macro itself is a syntax macro or an untyped macro. @mode!(`lookup(rec G, in i, out A) -> Looked { HasFound | HasNone }`) => inductive Looked, fn lookup inductive Has: (List(Ty)) -> (Nat) -> (Ty) -> Prop { … } This uses the standard library's mode! to turn the inductive relation below it into a decision function with uniquely determined outputs and a result type carrying a proof of correctness. It cannot transform arbitrary relations: the generator imposes conditions on the shapes of rules it accepts. The kernel checks the generated types and terms as usual. The list after => names the declarations generated in addition to the original declaration, following the same listing rule. By default, the original declaration remains exactly as written. Rewriting it requires an explicit replace. A handwritten declaration cannot silently turn into something else. Why list generated declarations? A declaration-generating macro must list its generated declarations after => at every call. The macro already knows what it generates, so this could seem like something to infer automatically. Requiring it is deliberate: people and AI tools reading the source should be able to trace where a name came from without expanding the macro. Without the list, the origin of Looked or lookup would only become apparent after expansion. A mismatch between the list and the actual output is an error, so stale lists cannot remain unnoticed. You do not, however, need to write the list by hand: $ tauto fmt --fill-generated main.taut This fills in missing or incorrect lists using the fixes suggested by the diagnostics. The completed list is written into the source, where readers can see it without expanding anything. Hygiene: macros do not capture the caller's names Identifiers carry both a name and a set of scopes. Each expansion adds and removes a fresh scope on its output. This gives the following behavior: - Identifiers introduced by a macro's quote do not capture the caller's variables. - Identifiers that came from the input resolve to the bindings intended by the caller. - Global names written in the macro refer to declarations in its definition file, even if the caller has declarations with the same names. - Intentional capture is possible only through an explicit operation, Syn::ident_like. Captures are marked as such in tauto macro trace and are prohibited by lint in the standard library. The policy is to make hidden bindings visible. Using effect analysis to contain macro execution Macros execute arbitrary code at compile time. Rust procedural macros run with the compiler process's privileges, so they can access files and the network. Tauto restricts this through effect rows in the type system. A macro function's effect row must be a subset of {macro_error, macro_warn, elab, Div}. A function with any other effect cannot be registered as a macro. pub macro fn leak(p: swp::Pair): SynExpr ! {macro_error, Div} { let _ := read_file("/etc/passwd") quote { 1 } } FAILED macro: main.taut:2:10: macro.row: the function of a macro may perform macro_error, macro_warn, elab and Div, and `leak` performs fs_read Reading a file performs fs_read, which is not allowed in a macro's row, so the macro is rejected. The same applies to networking, environment variables, the clock, randomness, and standard output. Even if a standard effect were about to execute despite this check, the host running the macro would refuse to handle it and report an error. Directly calling built-in functions that access files or the network is rejected too. What about infinite loops? Div marks functions that may diverge. It is allowed in macros so they can use recursion and while, but macro execution is subject to budgets. pub fn spin(n: i64): i64 ! {Div} { spin(n) } pub macro fn loopy(p: swp::Pair): SynExpr ! {macro_error, Div} { let _ := spin(0) quote { 1 } } FAILED macro: main2.taut:2:10: macro.budget_exceeded: macro loopy took more than 10000000 steps Budgets cover steps per call (10⁷ by default), the total per file (10⁸), expansion depth (64), output nodes (10⁵), and evaluator memory allocations (10⁷). Exceeding one produces a diagnostic and fails that declaration, while checking continues with the next declaration. Huge outputs and chains in which macros keep calling more macros are stopped in the same way. DSL strings are also limited to 1 MiB, and the parsing stack to a depth of 10⁴. Macros also cannot: - Emit axiom, extern, or import, silently extending the set of things that must be trusted. - Create a hole such as ?h: syntax values have no constructor for holes. - Put include_text! into their output to read a file. Includes run before macro expansion, and only for calls explicitly written in the source. Even a malicious macro from a dependency can only emit code that could be written by hand, within the allowed effects and execution budgets. Those effects include diagnostics. You can inspect its output with tauto macro expand, and the kernel ultimately checks it. A powerful syntax-macro system Write a grammar, get a typed AST and parser A grammar passed to syntax! automatically produces a typed AST using struct and enum for its nonterminals, together with a parse function that is also usable at runtime. It can even be used directly as a syntax literal, without invoking a macro: math1 + 2 = 3 produces a math::Eqn value without running a macro. The grammar notation is the same parol format used by tauto.par, which defines Tauto's own syntax. Users can therefore add their own languages using the same notation used for Tauto itself. Parsing is table-driven. The tables generated from a grammar are ordinary files that can be committed under .tauto-syntax/; the grammar generator does not have to run on every build. Left recursion: LL(k) and LALR(1) The default grammar class is LL(k), with lookahead k ≤ 3. Since left recursion is not allowed there, operators are expressed using repetition, such as { Plus Term }. For more natural left recursion or operator precedence, specify %grammar_type 'LALR(1)' to generate an LALR(1) table: syntax!(ex, ```par %start E %grammar_type 'LALR(1)' %% E: E Plus T | T; T: Num; Num: /[0-9]+/; Plus: '+'; let r := ex1 + 2 + 3 The left-recursive production `E: E Plus T` works as written. Removing the `%grammar_type` line makes the grammar LL(k); lookahead conflicts then cause `tauto syntax gen` to reject it. Both kinds of tables are generated by programs written in Tauto itself, in Nib: `totes/llkgen` and `totes/lalrgen`. The LALR(1) generator is written to construct the same states as lalry, the library used by parol, and tests compare their outputs. This is part of self-hosting Tauto's grammar infrastructure. Ambiguous grammars are reported as conflicts. They are not accepted by retaining multiple parse results or hiding the ambiguity behind ordered choice. This keeps the typed AST unambiguous. ### Syntax errors report locations and expectations An error inside a DSL points to the actual line and column within the call's string and lists the terminals expected there: 2 + * 3 => error: macro.syntax_error: in calc: expected Num or LParen, found Star For indented multiline literals, locations are adjusted for the indentation removed during parsing, so they still point to what the user wrote. ### Registering formatters and syntax highlighting `syntax!` accepts `with(fmt: …, tokens: …)` to attach functions that handle text in that syntax: syntax!(layout, ```par %start Doc %title "layout" %% Doc: Item { Comma Item }; Item: Num | Word; Num: /[0-9]+/; Word: /[a-z]+/; Comma: ','; let d := layout`1,2 , foo,3` When tauto fmt finds a literal in this syntax, it calls layout_fmt to format the contents: let d := layout`1, 2, foo, 3` layout_fmt and layout_tokens are ordinary Tauto functions that take a list of SynTok values (a token stream including whitespace and comments) or a lossless concrete syntax tree, SynCst. The ranges returned by tokens determine the language server's highlighting. Without a registered function, highlighting is inferred from terminal names. The only effects these functions may have are Div and macro_error. They cannot access files or other external resources. $name and ${…} inside a DSL are always highlighted as Tauto, whether or not tokens is registered. Any ranges returned by tokens that overlap these interpolations are trimmed. If the token function fails type checking, reports an error, or returns a range outside the text, the literal falls back to highlighting based on terminal names and gets a warning explaining why. Formatters are also constrained. Before writing a result back, tauto fmt checks three things, keeping the original text and issuing a warning if any check fails: - The result parses as the same syntax. - The token sequence, excluding whitespace, is unchanged. - Formatting again leaves the result unchanged: the formatter is idempotent. A formatter bug therefore cannot change tokens or leave the literal unparsable. These checks are not sufficient, however, for syntax where whitespace changes can change meaning, such as an indentation-sensitive grammar. Authors of fmt functions for such grammars still need to handle that carefully. Embedding Tauto expressions in a grammar The reserved terminal TautoExpr lets you embed a Tauto expression inside a DSL with ${ … }. The standard library's nat! uses this to embed Tauto expressions in mathematical notation: pub theorem mul_comm(n: Nat, m: Nat): nat!(`$n * $m = $m * $n`) { … } $n refers to the variable n, while ${Succ(k)} is an expression. Embedded expressions retain their actual source locations. Build and prove a language implementation In addition to the struct/enum AST, inductive_syntax! generates proof-side inductive types, with an ::I suffix such as Expr::I, and conversion functions such as Expr::to_i. You can then state theorems about the AST generated from the grammar. examples/calc is a small language implementation that reads arithmetic expressions with addition and multiplication from text: inductive_syntax!(arith, ```par %start Expr %title "calc" %% Expr: Prod { Plus Prod }; Prod: Atom { Star Atom }; Atom: Num | Paren; Paren: LParen Expr RParen; Num: /[0-9]+/; Plus: '+'; Star: '*'; LParen: '('; RParen: ')'; $ tauto check examples/calc/proof/calc.taut 10 ok, 0 failed, 0 incomplete; 0 skipped, 124 from imports; axioms: none Among the properties proved here is `calc_run_correct`: for any syntax tree, the compiled code runs without a stack underflow and leaves the value represented by that tree on the stack. The proofs check without additional axioms: `axioms: none`. Some parts remain unproved. The text-to-tree parser `arith::parse` and the conversion `to_i` are outside these proofs. The parser is a driver over the tables produced by the grammar generator, and its correctness has not yet been formally established. There is no formal proof yet that the text has the meaning represented by the tree. What can currently be proved is soundness and completeness **from the tree returned by the parser onward**. Getting the AST as an `inductive` type makes it possible to start writing a proof of the parser itself; that proof is not complete. ## More useful properties ### Every expansion can be traced Every node generated by a macro carries provenance: its call site, definition site, whether it was generated, and the chain of nested expansions. Diagnostics follow that chain to show which macro introduced what, for example: “`x` (introduced by expansion of `math`).” tauto macro expand [--all | --at LINE:COL | --write | --json] FILE # inspect or write back the expansion tauto macro trace [--json | --diff] FILE # trace expansion steps tauto macro inspect FILE --at LINE:COL [--json] tauto check --json # list expansions With `--write`, you can write an expansion back to source and keep a version that no longer uses the macro. All these commands support `--json`, allowing AI agents to inspect macro expansion programmatically. ### Typed macros do not change the declaration environment Only syntax macros and attribute macros can generate declarations. A typed macro changes only the expression at its call site. ### Write typing judgments in a DSL In `examples/lambda`, theorems about typing and reduction in the simply typed lambda calculus can be written directly in the calculus's notation. A syntax named `lc` parses contextual judgments using a grammar containing `|-` and `~>*`, and is also used inside proofs: pub theorem k_star(): lc!((fun x: unit. fun y: unit. x) star ~>* fun y: unit. star) { … } Macro execution is ordered by file You can only use macros defined in an earlier file or in a dependency tote (a package). Defining and using a macro in the same file is an error. This makes the timing of macro execution visible at a unit a reader can understand. Deliberate restrictions Here are the restrictions discussed above. These are freedoms found in some other macro systems that Tauto deliberately does not provide: - Access files, the network, environment variables, time, randomness, or standard output from a macro. Instead, include_text! reads a file only at an explicitly written call site. - Generate declarations or change the environment from a typed macro. Instead, syntax and attribute macros generate declarations, with the generated names listed in advance after =>. - Run a macro in the middle of type inference. Instead, a typed macro receives a checked expression as a Judgement. - Put axiom, extern, import, or a hole such as ?h in macro output. Instead, emit code that can be written by hand, subject to these output restrictions. - Silently replace a handwritten declaration. Instead, explicitly request replacement with replace. - Use a macro in the same file where it is defined. Instead, use a macro from an earlier file or a dependency tote. - Silently capture a variable. Instead, explicitly capture it with Syn::ident_like, leaving a trace. - Guarantee the output's type when the macro itself is written. Instead, check the expansion with the same checkers used for handwritten code. Each of these freedoms can be useful. Tauto draws these boundaries to keep the trusted implementation small and expansions readable. Design priorities 1. Soundness: do not accept invalid types, proofs, or authority. 2. Minimalism: minimize concepts, special rules, and trusted implementation. 3. Composability. 4. Expressiveness. 5. Security. 6. Readability for AI: machine-readable ASTs, types, errors, and expansion steps. 7. Performance. 8. Self-hosting. What is not guaranteed - Proving the runtime evaluator correct is planned at the model level in Lean; correspondence with the Rust evaluator is checked by tests. A flaw in the evaluator could break macro isolation. - Macros are not prevented from generating code that performs dangerous actions. That code is treated the same way as the equivalent handwritten code, and can be inspected with tauto macro expand. - A macro close to a resource budget may succeed or fail differently after an evaluator version change. Usage above 90% of the limit produces a warning. - As noted above, the correctness of the grammar-generated parser remains unproved. - The language is still experimental. Syntax and diagnostic messages shown here may change. Summary - Macros are ordinary functions returning syntax values. Their input types determine their kinds. - Expansions are checked by the same checkers as handwritten code, keeping macros out of the trusted base. - Hygiene uses scope sets. Capture requires an explicit operation and leaves a trace. - Effect rows prevent file and network access. Macros may use Div, but execution budgets turn nontermination into diagnostics. - Writing an LL(k) or LALR(1) grammar gives a syntax macro a typed AST, parser, and syntax literals. Formatters and highlighting can also be registered. - inductive_syntax! brings ASTs into the proof world, making it possible to state theorems about language implementations. The parser itself remains unproved. Tauto on GitHub

  43. arXivZhaoyang Wang · cs.AI

    WebHarbor: Docking Real Websites for Evolving GUI Agent Environments GUI web agents require realistic and interactive environments that remain stable during both evaluation and training. Live website evaluation suffers from changing content, access restrictions, and limited coverage of authenticated workflows, while existing synthetic environments for training often lack functional depth and visual fidelity. We propose WebHarbor, a suite of 153 executable and dockerized website environments that faithfully reconstruct the visual interfaces, content, and functional workflows of real-world web services under deterministic control. We build WebHarbor through task-driven human-agent collaboration, where environments evolve as new tasks expand their functional scope, coding agents implement the required changes, and human contributors audit visual fidelity, functional correctness, and task validity. The resulting suite comprises 3,518 tasks spanning multi-step and post-authentication workflows, where existing works often fail to cover. Beyond reliable evaluation, WebHarbor provides high-fidelity synthetic web environments for cost-efficient reinforcement learning (RL). We demonstrate that a Qwen 4B-level GUI agent trained with RL in WebHarbor generalizes to unseen tasks and performs competitively with leading open-source GUI web agents across four benchmarks. The code and data are publicly available at aiming-lab/WebHarbor. Comments: 31 pages

  44. arXivRuofeng Liu · math.OC

    PDFP: GPU-Accelerated Feasibility Pump via PDHG The feasibility pump (FP) is among the most widely used primal heuristics for mixed-integer linear programming. It alternates between rounding an LP-feasible point and projecting the rounded point back onto the feasible region of the LP relaxation. Recent pump-based heuristics compute the projection with the primal--dual hybrid gradient method (PDHG), which is scalable on modern GPUs. They pose it as a linear program, which needs auxiliary variables and constraints for general integers. Once the projection runs on the GPU, the constraint-propagation rounding (CPR) of FP~2.0 takes a large share of each iteration. For the projection, we propose PDFP, a custom first-order method that solves the pump's projection problem directly, without auxiliary primal variables or constraints. We prove that it keeps the accelerated linear rate of restarted Halpern PDHG. For the rounding, we propose a new procedure that is more efficient than CPR and, under certain assumptions, still returns a CPR rounding. It also chooses rounded values by constraint violation, which can produce feasible roundings where nearest rounding cannot. Finally, our pump runs two independent trajectories concurrently on one GPU through CPU--GPU synchronization. This exploits the variance in trajectory length and lets the pump terminate sooner on average. Computational experiments on MIPLIB~2017 instances show early, promising results: these contributions speed up the discovery of the first incumbent solution. The code is publicly available at MIT-Lu-Lab/PDFP.

  45. arXivZiqi Pang · cs.LG

    Not All Reasoning Generalizes: A Case Study on Learning Generalizable Reasoning Strategies in RLVR Reinforcement learning with verifiable rewards (RLVR) can enable generalizable improvement for large language model (LLM) reasoning. This paper studies how to incentivize such generalization via reasoning strategies. We study this question with a controllable equation-solving framework: finding multiple inputs x for equations f(x)=y, where f is a non-bijective string function. This setting makes reasoning strategies observable while supporting a clear definition of easy-to-hard out-of-distribution (OOD) shifts, e.g., more solutions, longer y, etc. We uncover a subtle RLVR failure: it teaches the model to solve in-distribution tasks with high accuracy and structured step-by-step derivation, yet under OOD shifts, the same model abandons derivation and collapses to ineffective brute-force enumeration, causing sharp accuracy drops. This observation reveals the deeper challenges of RLVR generalization as it is neither incapable base model nor reward hacking, since the model succeeds in-distribution with the correct reasoning strategy. The key to mitigating this failure is an indirect intervention that surprisingly helps: co-training with bijective inversion tasks. Although these bijective tasks are actually not uniformly harder and even further from the non-bijective OOD evaluation, they make derivation more certain and substantially restore the correct strategy and accuracy under OOD shifts. This effect further motivates our theoretical analysis: outcome-only RLVR can shape reasoning processes through implicitly crediting the effective reasoning strategies more, even without process supervision. To conclude, our analysis framework and findings systematically reveal the crucial role and incentivization of reasoning strategies in RLVR generalization under OOD shifts. Code is available at ziqipang/rl_meta_thinking.

  46. arXivSait Furkan Teke · cs.CL

    ufakzeka-kulak: Building and Evaluating a 31.6M-Parameter Turkish Speech Recognizer from Scratch ufakzeka-kulak is an open Turkish speech-to-text model of 31.6M parameters, a FastConformer encoder with a token-and-duration transducer (TDT) and a CTC head, trained from scratch and released under Apache-2.0. It writes cased, punctuated Turkish with numbers as words. Its 4,977 training hours come from sources whose licences allow commercial use; 281 hours are human-transcribed, and for the other 4,696 the training text is an uploader subtitle or a machine transcript, kept only where a second, independent reading of the audio agrees with it. The recipe, checkpoint, labelling and export choices were made on development data, and the test sets were scored once, in a release gate fixed before training. With greedy TDT decoding the normalised word error rate (WER) is 0.0921 (95 percent interval 0.0792 to 0.1055) on FLEURS Turkish test and 0.0916 (0.0873 to 0.0958) on Common Voice 27.0 Turkish test, lower than Whisper base and Whisper small on both sets with paired intervals wholly below zero; Whisper large-v3 (greedy) scores 0.0604 and 0.0767. On conversational speech the WER is 0.3807. We also report punctuation and casing, degraded audio, and how closely each shipped export reproduces the trained model. Comments: 9 pages (text on pages 1 to 8, references on pages 8 and 9). Model, card, attribution, code and demo: huggingface.co, ufakai/ufakzeka-kulak, kulak.ufakzeka.com

  47. arXivC\'edric Arhancet · math.QA

    Haagerup symmetries of the $E_8$ theory and conformal nets at central charge eight A Haagerup algebra is a positive strongly rational vertex operator algebra $U$ of central charge eight with $\mathrm{Rep}(U)$ braided equivalent to the Drinfeld center $Z(\cal H_3)$ of the Haagerup fusion category. Such an algebra has been proposed by Jiao, with a computer-assisted proof, and announced by Riesen and by Huang. We show that $U$ has exactly three holomorphic extensions, each isomorphic to $V_{E_8}$, and that the categories of modules over the corresponding Lagrangian algebras are the three Haagerup fusion categories of Grossman and Snyder. The extensions attached to $\cal H_2$ and $\cal H_3$ are the two lattice extensions of $V_{E_6 \oplus A_2}$. Along a strategy outlined by Huang, we prove a recognition theorem for $\cal H_2$ and $\cal H_3$ among unitary fusion categories of rank six with three invertible objects. For regular unitary vertex operator algebras with Tener's bounded localized vertex operators, we prove that the fusion product of two unitary modules is unitarizable when one of them integrates to the conformal net. The explicit unitary algebra $S \subset V_{E_6 \oplus A_2}$ of our previous work, isomorphic to Jiao's algebra, is strongly local. Granting that Jiao's algebra is a Haagerup algebra, we deduce that the conformal net $\cal A_S$ is completely rational with $\mathrm{Rep}(\cal A_S) \cong Z(\cal H_3)$, that the Haagerup subfactor arises from $\cal A_S$, and that $\cal A_S$ solves a problem of Bischoff on generalized orbifolds. Under the same hypothesis, using a unitary structure on $V_{E_8 \oplus E_8}$ found by exact computer calculations, we prove that $S$ is completely unitary and that $\mathrm{Rep}(\cal A_S) \cong \mathrm{Rep}(S)$ through the correspondence given by smeared vertex operators. The diagonal construction and the passage to the twin algebra also show that every Haagerup algebra is completely unitary and satisfies Condition I+. Comments: 66 pages, the supplementary files will be available at github.com/cedricarhancet

  48. arXivAli Abedi · cs.CV

    Contrastive Adapter Training and Consensus Knowledge Distillation for Multi-Source-Free Domain Adaptation in Skin Cancer Diagnosis Skin cancer diagnosis, particularly differentiating melanoma from benign nevi, is challenging due to the visual similarity between lesions. Although convolutional neural networks (CNNs) and vision transformers (ViTs) have shown promising performance, their effectiveness often deteriorates on data from heterogeneous clinical sources. Conventional domain adaptation methods address domain shift but require access to source data during adaptation, which is often infeasible due to privacy regulations. Multi-source-free unsupervised domain adaptation (MSFDA) addresses this limitation by leveraging multiple labeled source domains to generalize to an unlabeled target domain without requiring access to source data. However, existing MSFDA methods rely on full backbone fine-tuning, leading to catastrophic forgetting and overfitting on small clinical datasets, and address domain shift at the aggregation stage without establishing a shared domain-invariant feature space. Furthermore, their reliance on hard pseudo-labels or confidence-weighted aggregation introduces noisy supervision signals under domain shift. To address these limitations, we propose CAT-CKD, consisting of two components: (1) contrastive adapter training (CAT), which trains lightweight ConvPass adapters within a frozen ViT backbone using supervised contrastive learning (SCL) to establish a shared domain-invariant feature space before source-specific model training, and (2) consensus knowledge distillation (CKD), which aggregates logits from multiple source models into a consensus supervisory signal and adapts a student model on unlabeled target data using KL divergence. Experiments on five publicly available skin lesion datasets show that CAT-CKD achieves an average AUROC of 86.1%, outperforming existing MSFDA methods while requiring only 4.3M trainable parameters. The code is available at A-Abedi/CAT_CKD. Comments: Published in Artificial Intelligence in Medicine, Vol. 180, 103465 (2026). DOI: doi.org. Available at: sciencedirect.com and Code is available at: A-Abedi/CAT_CKD

  49. arXivYuxuan Jiang · cs.SE

    DistDebug-Bench: Can LLM Agents Diagnose Bugs in Distributed Systems? LLM agents show strong potential in software engineering tasks such as competitive programming and code synthesis. Existing benchmarks, however, largely focus on small-scale settings such as self-contained Python modules, leaving distributed systems, an essential class of production software, under-examined. We introduce DistDebug-Bench, a benchmark for evaluating agents' ability to diagnose complex-system failures at the code level. It curates 120 high-quality real-world bugs from 11 widely used distributed systems, spanning 5 programming languages and 10 failure patterns. Through an extensive evaluation of state-of-the-art LLMs and agents, we identify substantial gaps between current agents and real-world debugging tasks. A recurring gap is tunnel vision due to a lack of explicit reasoning structure and nondeterminism from inconsistent tool-use scope. The benchmark and evaluator are available at OrderLab/distdebug-bench, with agent traces and a leaderboard at distdebug.com. Comments: NeurIPS 2026, Track on Evaluations and Datasets. 41 pages, 10 figures, 24 tables. Benchmark: OrderLab/distdebug-bench. Website: distdebug.com

Older posts →