Archive
Discover and discuss technology tools
Explore the Tiscuss archive by category or keyword, then jump into conversations around what matters most.
Top AI-Powered YouTube Front-End: Invidious
Invidious is an alternative front-end to YouTube
Self-Taught Developer from Bahrain Launches Multi-Model AI Platform
https://reddit.com/link/1sxotqx/video/xlaqd9i8guxg1/player I'm a self-taught developer, 39 years old, based in Bahrain. Four months ago I started building AskSary - a multi-model AI platform with a persistent memory layer that sits above all the models. The core idea: the model is not the identity. Most AI tools lose your context the moment you switch models. I built the layer that remembers you across all of them. Here's what's shipped so far: **Models & Routing** Every major model in one place - GPT-5.2, Claude Sonnet 4.6, Grok 4, Gemini 3.1 Pro, DeepSeek R1, O1 Reasoning, Gemini Ultra and more - with smart auto-routing or manual override. **Memory & Context** Persistent cross-model memory. Start with Claude on your phone, switch to GPT on your laptop - it already knows what you discussed. Proactive personalisation that messages you first on login before you've typed a word. **Integrations** Google Drive and Notion - connect once, pull files and pages directly into chat or your RAG Knowledge Base. Unlimited uploads up to 500MB per file via OpenAI Vector Store. **Video Analysis** \- Gemini native video understanding for YouTube URL analysis (no download required, processed natively) and direct file upload up to 500MB. Full breakdown of visuals, audio, dialogue, editing style and key moments. **Generation** Image generation and editing, video studio across Luma, Veo and Kling, music generation via ElevenLabs, video analysis via upload or YouTube URL. **Builder Tools** Vision to Code, Web Architect, Game Engine, Code Lab with SQL Architect, Bug Buster, Git Guru and more. Tavily web search across all models. **Voice & Audio** Real-time 2-way voice chat at near-zero latency, AI podcast mode downloadable as MP3, Voiceover, Voice Notes, Voice Tuner. **Platform** Custom agents, 30+ live interactive themes, smart search, media gallery, folder organisation, full RTL support across 26 languages, iOS and Android apps, Apple Vision Pro. **Where it is now** 129 countries. Currently at 40 new signups a day. 1080 Signup's so far after 4 weeks or so. MRR just started. Zero ad spend. All of it built solo, one feature at a time, on a balcony in Bahrain. **The Stack:** Frontend - Next.js, Capacitor (iOS and Android) and Vanilla JS / React Backend - Vercel serverless functions, Firebase / Firestore (database + auth) and Firebase Admin SDK AI Models - OpenAI (GPT, GPT-Image-1), Anthropic (Claude), Google (Gemini), xAI (Grok), DeepSeek Generation APIs - Luma AI (video), Kling via Replicate (video), Veo via Replicate (video), ElevenLabs (music), Flux via Replicate (image editing), Meshy (3D — coming soon) Integrations - Google Drive (OAuth 2.0), Notion (OAuth 2.0), Tavily (web search), OpenAI Vector Store (RAG), Stripe (payments), CloudConvert (document conversion), Sentry (error tracking), Formidable (file handling) Rendering - Mermaid (flow charts) and MathJax Platforms - Web, iOS, Android, Apple Vision Pro (visionOS) Languages - 26 UI languages with full RTL support [asksary.com](http://asksary.com) Happy to answer questions on any part of the build - stack, architecture, API cost management, anything.
AI Agents: Identity, Not Memory, Was the Key to Stability
Everyone's building memory layers right now. Longer context, better embeddings, persistent state across sessions. I spent weeks on the same thing. But the failure mode that actually cost me the most debugging time had nothing to do with memory. Here's what it looked like: an agent would be technically correct - good reasoning, clean output - but operating from the wrong context entirely. Answering questions nobody asked. Taking actions outside its scope. Not hallucinating. Drifting. Like a competent person who walked into the wrong meeting and started contributing without realizing they're in the wrong room. I run 11 persistent agents locally. Each one is a domain specialist - its entire life is one thing. The mail agent's every session, every test, every bug fix is about routing messages. The standards auditor's whole existence is quality checks. They're not generic workers configured for a task. They've each accumulated dozens of sessions of operational history in their domain, and that history is what makes them good at their job. When they started drifting, my first instinct was what everyone's instinct is: better memory. More context. None of it helped. An agent with perfect recall of its last 50 sessions would still lose track of who it was in session 51. What actually fixed it I separated identity from memory entirely. Three files per agent: passport.json - who you are. Role, purpose, principles. Rarely changes. This is the anchor. local.json - what happened. Rolling session history, key learnings. Capped and trimmed when it fills up. observations.json - what you've noticed about the humans and agents you work with. Concrete stuff like "the git agent needs 2 retries on large diffs" or "quality audits overcorrect on technical claims." The agent writes these itself based on what actually happens. Identity loads first, then memory, then observations. That ordering matters. When the identity file loads first, the agent has a stable reference point before any history lands. The mail routing agent learned the sharpest version of this. When identity was ambiguous, it would route messages from the wrong sender. The fix wasn't better routing logic - it was: fail loud when identity is unclear. Wrong identity is worse than silence. The files alone weren't enough Three JSON files helped, but didn't scale past a few agents. What actually made 11 work is that none of them need to understand the full system. Hooks inject context automatically every session - project rules, branch instructions, current plan. One command reaches any agent. Memory auto-archives when it fills up. Plans keep work focused so agents don't carry their entire history in context. The system learned from failing. The agents communicate through a local email system - they send each other tasks, status updates, bug reports. One agent monitors all logs for errors. When it spots something, it emails the agent who owns that domain and wakes them up to investigate. The agents fix each other. The memory agent iterated three sessions to fix a single rollover boundary condition - each time it shipped, observed a new edge case, and improved. These aren't cold modules. They break, they help each other fix it, they get better. That's how the system got to where it is. You don't need 11 agents The 11 agents in my setup maintain the framework itself. That's the reference implementation. But u could start with one agent on a side project - just identity and memory, pick up where u left off tomorrow. Need a team? Add a backend agent, a frontend agent, a design researcher. Three agents, same pattern, same commands. Or scale to 30 for a bigger system. Each new agent is one command and the same structure. What this doesn't solve This all runs locally on one machine. I don't know whether identity drift looks the same in hosted environments. If u run stateless agents behind an API, the problem might not exist for you. Small project, small community, growing. The pattern itself is small enough to steal - three JSON files and a convention. But the system that keeps agents coherent at scale is where the real work went. pip install aipass and two commands to get a working agent. The .trinity/ directory is the identity layer. Has anyone else tried separating identity from memory in their agent setups? Curious whether the ordering matters in other architectures, or if it's just an artifact of how this system evolved.
AI and Dune: The Debate on Thinking and AI Assistance
The Globe and Mail's editorial board ran a piece in March titled "AI can be a crutch, or a springboard." To illustrate the crutch half, they offered this: someone asked AI to explain a passage from Dune that warns against delegating thinking to machines. Instead of reading the book. That anecdote is doing more work than the studies the editorial cites. But the studies are real. Researchers at MIT published a paper in June 2025 titled "Your Brain on ChatGPT: Accumulation of Cognitive Debt when Using an AI Assistant for Essay Writing Task" (Kosmyna et al., arXiv 2506.08872). The study tracked brain activity across three groups: people writing with ChatGPT, people using search engines, and people working unaided. The LLM group showed the weakest neural connectivity. Over four months, "LLM users consistently underperformed at neural, linguistic, and behavioral levels." The most striking finding: LLM users struggled to accurately quote their own work. They couldn't recall what they had just written. The Globe cites this and similar research to make a point about dependency. The implicit argument: hand enough of your thinking to a machine and you stop doing it yourself. That finding is probably accurate for the way most people use these tools. The question is whether that's the only way they can be used. The Globe's own title contains the counter-argument. Crutch or springboard. They wrote both words. They just didn't develop the second one. Ethan Mollick, a professor at Wharton who has been writing about AI use since the tools became widely available, argued in 2023 that the real challenge AI poses to education isn't that students will stop thinking, it's that the old structures assumed thinking was hard enough to enforce. ("The Homework Apocalypse," [oneusefulthing.org](http://oneusefulthing.org), July 2023.) When AI can do the surface-level cognitive work, the only tasks left worth assigning are the ones that require actual judgment. The tool, in that framing, doesn't reduce the demand for thinking. It raises the floor under it. Nate B. Jones, who writes and consults on what it actually takes to work well with AI, has made a sharper version of this argument. His position: using AI effectively requires more cognitive skill, not less. Specifically, it requires the ability to translate ambiguous intent into a precise, edge-case-aware specification that an AI can execute correctly. It requires detecting errors in output that is fluent and confident-sounding but wrong. It requires recognizing when an AI has drifted from your intent, or is confirming a premise it should be challenging. These are not passive skills. They are harder versions of the same thinking the MIT study found LLM users weren't doing. The difference between the group that lost neural connectivity and the group that doesn't isn't the tool. It's what they decided to do with it. Here's my own evidence. In the past year I built a working web application. Python backend. JavaScript frontend. Deployed on two hosting platforms. Payment processing. User authentication. A full data model. I do not know how to code. Every product decision was mine. Every architectural call. Every tradeoff judgment. I defined what the system needed to do, why, and what done looked like. I reviewed every significant change before it was accepted. When something broke, I identified where the breakdown was and directed the fix. The implementation was handled by AI. The thinking was mine. This mode (call it AI-directed building) is the opposite of the Dune reader. The quality of what gets produced is entirely a function of how clearly you can think, how precisely you can specify, and how critically you can evaluate what comes back. There is no shortcut in that. A vague brief to an AI doesn't produce a confused output. It produces a confident, fluent, wrong one. The discipline that prevents that is yours to supply. Non-coders building functional software with AI is common enough now that it isn't a story. What's less visible is the specificity of judgment underneath the ones that actually work. The practices that force more thinking rather than less are not complicated, but they require a decision to use the tool differently. When I've formed a position on something, I give the AI full context and ask it to make the strongest possible case against me. Ask for the hardest opposing argument it can construct. Then I read it. Sometimes it changes nothing. Sometimes it surfaces something I had dismissed without fully examining. The AI doesn't form my view. It stress-tests one I've already formed. When I'm uncertain between options, I don't ask which is better. I ask: here are two approaches, here is my constraint, now what does each cost me, and what does each require me to give up? I make the call. The AI laid out the shape of the decision. The judgment was mine. The uncomfortable part of thinking is still yours in this mode. The tool makes the work more rigorous, not easier. The MIT researchers and the Globe editorial are almost certainly right about the majority of current use. Passive use produces passive outcomes. That's not a controversial claim. The crutch half and the springboard half use the same interface. The difference is whether the person in front of it decided to think. What are you doing with it that forces more thinking rather than less? Are you using it to skip a step, or to take a harder one? Genuinely asking.