今日已更新 269 条资讯 | 累计 41043 条内容
关于我们

标签:#disc

找到 529 篇相关文章

AI 资讯

Precision Medicine RAG: Building a Clinical Trial Search Engine with Hybrid Search and BGE-M3

In the world of Generative AI, there is a massive difference between asking for a "pancake recipe" and asking for "eligibility criteria for phase III immunotherapy trials." In specialized fields like healthcare, a standard vector search often fails because medical terminology is dense, specific, and unforgiving. 🏥 Today, we are building a High-Precision Medical RAG (Retrieval-Augmented Generation) engine. We will move beyond simple semantic search by implementing Hybrid Search (Dense + Sparse vectors) using the powerhouse BGE-M3 model, storing it in Qdrant , and fine-tuning the results with FlashRank . This approach ensures that technical medical terms (like EGFR L858R mutation ) aren't lost in the "vibe" of a vector space. Keywords: Hybrid Search , Medical RAG , BGE-M3 Embeddings , Qdrant Vector Database , Clinical Trial Retrieval . The Architecture: Why Hybrid Search? Traditional RAG relies on "Dense Vectors" (semantic meaning). However, in clinical trials, keywords matter. A patient searching for "Pembrolizumab" needs that exact drug, not just "something related to cancer." By using BGE-M3 , we get the best of both worlds: Dense Retrieval : Captures the context and intent. Sparse Retrieval (Lexical) : Captures specific keywords and medical codes. Reranking : Re-evaluates the top hits to ensure the most clinically relevant document is on top. graph TD A[User Query: Medical Case] --> B{BGE-M3 Encoder} B -->|Dense Vector| C[Qdrant Collection] B -->|Sparse Vector| C C --> D[Hybrid Search Results] D --> E[FlashRank Reranker] E --> F[Top K Relevant Documents] F --> G[LLM: Final Synthesis] G --> H[Actionable Clinical Insight] Prerequisites 🛠️ Before we dive in, make sure you have your environment ready: Qdrant : Our high-performance vector database. BGE-M3 : A state-of-the-art embedding model that supports dense, sparse, and multi-vector retrieval. FlashRank : An ultra-fast, lightweight reranking library. LangChain : To orchestrate our RAG pipeline. pip install qdrant-c

2026-06-21 原文 →
AI 资讯

Building a no-root Android automation app taught me that trust is harder than features

I’m building ScriptTap, a no-root Android automation app for user-controlled phone workflows. The app lets people create scripts with taps, swipes, routines, screen-aware checks, OCR/text detection, image/pixel checks, variables, logic, and AI-assisted script creation. The technical side is hard, but the trust side may be harder. ScriptTap needs Android Accessibility permission because user-authored input automation requires it. That is a powerful permission. I do not want to minimize it, hide it behind vague onboarding copy, or expect people to click through without understanding what they are enabling. That creates a product-design problem. If the copy is too soft, it feels dishonest. If the copy is too warning-heavy, a legitimate automation tool can feel suspicious before the user even understands what it does. The explanation I am trying to make clear is: ScriptTap is no-root. Scripts are created and controlled by the user. Screen capture is user-controlled. It does not bypass Android permissions, lock screens, app security, or consent flows. Accessibility is required for overlay/input automation, so users should understand why it is being requested. The short version I keep coming back to is: ScriptTap uses Accessibility so your scripts can interact with the screen the way you tell them to. This is a powerful permission. You should only enable it if you understand and trust what the app is doing. For developers who have built apps with sensitive permissions: How did you explain the permission without either hiding the risk or scaring users away from a legitimate feature?

2026-06-21 原文 →
AI 资讯

The AI "Doom Loop": Why your autonomous coding agent is making things worse, and how to fix it

If you’ve spent any time working with autonomous AI coding agents recently, you know the drill. You give the agent a straightforward task: "Add a user profile page and link it to the navbar." The agent says, "I've got this." It writes some code. You run it, and it throws an import error. You paste the error back. The agent apologizes, rewrites the file, and now your routing is broken. You paste that error back. Ten iterations later, your config is mysteriously deleted, the navbar is entirely missing, and the agent is trying to install a deprecated version of React. This is the AI Agent Doom Loop. It happens because current agent frameworks mistake intelligence for discipline. We dump a 10,000-token SYSTEM_PROMPT.txt telling the agent everything about our project, hoping it remembers the architecture constraints on step 45 of its execution loop. It rarely does. I built Agent Rigor because I got tired of babysitting agents that code themselves into corners. The Root Cause: Context Rot When an agent starts a task, its context is pristine. But as it reads files, executes commands, and hits errors, its context window fills up with junk stack traces and previous failed attempts. By the time it's 20 steps deep, the original system prompt you carefully crafted is buried. The agent forgets the architecture guidelines. It starts prioritizing the immediate error in front of it over the overall goal. This is when it starts guessing, hallucinating, and making things worse. The Solution: Progressive Disclosure and Empirical Discipline Agent Rigor isn't a new LLM or a magic prompt wrapper. It's an operating system for agents that enforces strict empirical discipline . Instead of one massive prompt, Agent Rigor uses a 3-tier hierarchy: L1 (Apex Kernel): The absolute, non-negotiable laws. (e.g., "Never guess an API signature. Always grep or read the file first.") L2 (Phase Directors): Orchestration that only loads when the agent enters a specific phase (Planning, Execution, Verifica

2026-06-21 原文 →
AI 资讯

Venture capital

Il venture capital con progetti a 4-5 anni incarna perfettamente la tensione tra la teoria di Manso e la filosofia di Taleb. È un orizzonte temporale che suona contro-intuitivo: troppo lungo per la logica del "fail fast" da incubatore, troppo corto per la pazienza della ricerca fondamentale. Eppure è proprio qui che si gioca la partita dell'innovazione dirompente. Il problema strutturale I fondi VC operano tipicamente su cicli di 10 anni. Un progetto a 4-5 anni occupa il cuore del fondo: non è un esperimento rapido da liquidare, ma nemmeno un investimento da tenere per un'intera generazione. Manso ci dice che il contratto ottimale per l'innovazione richiede tolleranza nel breve termine e ricompensa nel lungo. Ma cosa significa "breve" e "lungo" quando il progetto stesso dura 4-5 anni? Qui emerge un paradosso. Il VC tollerante — quello che Manso celebrerebbe — potrebbe essere tentato di mantenere vivo un progetto che sta fallendo, perché il fallimento prematurato distruggerebbe il valore dell'opzione. Ma Taleb ci avverte: l'antifragilità non è la persistenza a oltranza, è la capacità di trarre beneficio dallo stress. Un progetto che assorbe risorse per 5 anni senza generare informazioni utili non è antifragile: è semplicemente costoso. La soluzione di Manso: il contratto come orologio Per Manso, la risposta sta nella struttura contrattuale. Il contratto ottimale per un progetto a 4-5 anni non è lineare: non è un flusso costante di finanziamento legato a milestone arbitrarie. È qualcosa di più sofisticato. Il principale (il VC) deve commettere a un livello di finanziamento iniziale che copra la fase esplorativa — i primi 12-18 mesi — senza richiedere risultati misurabili. Questa è la fase di "tolleranza eccezionale per il fallimento" di cui parlava Holmström. Poi, a intervalli predeterminati, il VC ha l'opzione — non l'obbligo — di continuare. Ma la soglia di abbandono deve essere più bassa del livello ottimale ex-post. In altre parole: il VC deve essere disposto a co

2026-06-20 原文 →
AI 资讯

Contro il Jobs Act e il merito liquido

Gustavo Manso (Haas School of Business, UC Berkeley) e Nassim Taleb affrontano entrambi il problema centrale dell'innovazione, ma da angolazioni complementari: Manso con la precisione del contratto ottimale, Taleb con la filosofia dell'antifragilità . Entrambi convergono su un'idea contro-intuitiva: per generare innovazione dirompente, bisogna proteggere il fallimento. Manso: Il contratto come strumento di tolleranza Il lavoro di Manso si concentra sui meccanismi di incentivazione che rendono l'innovazione possibile all'interno delle organizzazioni. La sua ricerca fondamentale (2011) modella esplicitamente il trade-off tra exploration (esplorazione di azioni nuove e non testate) e exploitation (sfruttamento di azioni note). Manso dimostra che i contratti ottimali per motivare l'innovazione richiedono una combinazione specifica: tolleranza per i fallimenti nel breve termine e ricompensa per il successo nel lungo termine . Questo è l'esatto opposto del classico "pay-for-performance" (paga in base alle prestazioni), che funziona bene per compiti routine ma soffoca l'innovazione. Come ha osservato Bengt Holmström (1989), citato da Manso, le attività innovative "richiedono una tolleranza eccezionale per il fallimento" perché il processo è imprevedibile e idiosincratico. Uno studio empirico fondamentale — che applica direttamente la teoria di Manso al venture capital — ha mostrato che i VC più tolleranti verso il fallimento generano startup significativamente più innovative. Un aumento dell'1% nella tolleranza al fallimento del VC porta a un aumento dello 0,5% nelle citazioni per brevetto. L'effetto è amplificato nelle recessioni e per le startup in fase iniziale. Manso ha anche esteso questa logica al finanziamento della ricerca scientifica, mostrando come la struttura dei fondi influenzi gli studi dirompenti. La sua analisi suggerisce che le leggi del lavoro che proteggono i dipendenti dal licenziamento arbitrario — attraverso quello che gli studiosi chiamano "effetto a

2026-06-20 原文 →
AI 资讯

Tutti contro l'ia

Il pensiero di Popper si intreccia con diversi autori in modi che illuminano il rapporto tra tecnologia, potere e libertà. Hannah Arendt Arendt condivide con Popper l'attenzione per la società aperta, ma la declina in termini di azione politica piuttosto che epistemologici. Dove Popper vede la chiusura come rifiuto della falsificazione, Arendt la vede come perdita dello spazio pubblico dove gli individui appaiono come agenti plurali. L'AI che automatizza decisioni politiche o sociali rischia di eliminare proprio questo spazio di apparizione — non c'è più un "chi" che agisce, ma un "cosa" che calcola. Il banale della tecnocrazia, per Arendt, può essere altrettanto pericoloso del male radicale. Theodor Adorno e Max Horkheimer La Dialettica dell'illuminismo offre un intreccio più critico con Popper. I due della Scuola di Francoforte vedevano la ragione strumentale — quella che calcola mezzi per fini prefissati — come il germe del dominio moderno. Popper difendeva invece la ragione critica come antidoto al totalitarismo. Il punto di tensione è rilevante per l'AI: se l'intelligenza artificiale è pura ragione strumentale ottimizzata, rientra nella diagnosi frankfurtiana più che in quella popperiana. La risposta popperiana sarebbe che l'AI può essere strumento di criticismo se aperta alla confutazione e al controllo democratico. Norbert Wiener Il fondatore della cibernetica condivide con Popper la preoccupazione per i sistemi che sfuggono al controllo umano. Wiener, già negli anni Cinquanta, avvertiva che le macchine intelligenti potrebbero imporre obiettivi incompatibili con i valori umani. Popper avrebbe riconosciuto in questo un caso di teoria non falsificabile: un sistema che apprende senza possibilità di essere corretto dall'esterno è un dogma tecnologico. Entrambi insistono sul human-in-the-loop , anche se Wiener lo motiva in termini di stabilità dei sistemi, Popper in termini di libertà. Michel Foucault Foucault aggiunge una dimensione che Popper lascia in ombra: il

2026-06-20 原文 →
AI 资讯

Working with AI Means Thinking More, Not Less

Working with AI Means Thinking More, Not Less Yes, this text is long. Yes, it repeats itself in places. I did not clean that up. A text that sounded too smooth while arguing that AI forces you to think more, not less, would be at least slightly dishonest. This is not fast food for quick consumption. And yes, don’t worry: you won’t hear anything especially new here. That is part of the problem too. There is a popular and very seductive story about AI in software development. Now that the machine can write code, the human gets to think less. You just point it in the right direction, and the model will quickly and cheaply do a significant part of the work on its own. In that picture, AI is primarily an accelerator for code production, and human thinking gradually shifts from necessity to optional extra. I keep feeling more and more strongly that this description is dangerously wrong. A more accurate formula for my own experience right now is this: I’m the tech lead, the AI is the entire team in one body . And if you take that metaphor seriously, the conclusion is the exact opposite of the mainstream narrative. Working with AI is not a way to think less. It is a mode in which you need to think more, not less . Not because the AI is bad. But because it is too good at one very treacherous thing: it confidently and smoothly fills in what was left unsaid. I’m the tech lead, the AI is the team At first this metaphor felt like a neat formulation. Now it feels like a literal description of what is going on. If you treat AI as a very fast and very capable executor, a lot of things become clearer immediately. It really can wipe out months of routine work. It can spin up prototypes quickly, take over test scaffolding, try out alternatives, make local edits, help break a task into parts, and sometimes even suggest a decent direction. On the surface, this really does look like a silver bullet. Especially if the human knows the stack and can read code. The pace becomes so extreme th

2026-06-20 原文 →
AI 资讯

A battery rated for 5000 cycles is making a promise about a lab, not your warehouse

The cycle number on a lithium battery's spec sheet is true and almost useless, because it describes a life the battery will live only in a temperature-controlled lab being cycled gently by a machine that never has a bad day. A cycle, in that test, means a full charge and a full discharge under mild, steady conditions, repeated until the pack fades to some fraction of its original capacity, often eighty percent. Your warehouse does none of that. It charges in bursts, discharges to whatever the shift demanded, bakes the pack in summer and chills it in winter, and counts a cycle as whatever happened between two plug-ins. Depth is the lever nobody quotes The single biggest mover of cycle count is how deep you run the pack on each outing, and that figure almost never shares the page with the headline number that sells the battery. The relationship is steeply nonlinear, which is the part that surprises people. Drain a lithium pack to nearly empty every time and you spend cycles fast. Use the top half and tuck it back on charge, and the same cell can deliver many times the number of shallow cycles before reaching the same faded state. The chemistry is mechanical about it: every deep swing stretches and contracts the electrode structures further, and the wider the swing the more wear each one inflicts. Two fleets on identical batteries can see lifespans years apart purely from how hard they drain them. This is why opportunity charging does double duty. It keeps the truck running, and it keeps each cycle shallow, which stretches the pack's life as a side effect. It also means a published cycle figure measured at full depth understates what a top-up fleet will see, while a figure measured shallow oversells what a run-it-flat operation will get. The same battery, the same number, two outcomes the sheet never warned you about. You have to know the test depth to know what the promise means. Heat is the other clock Cycles are only one of two clocks ticking on a battery, and the s

2026-06-20 原文 →
AI 资讯

How to Convert PDF and Excel Invoices to CSV for Faster Data Processing

Manually converting invoice data from PDF or Excel files into CSV format is one of the most time-consuming tasks in accounting and data management workflows. It often involves repetitive copy-pasting, formatting adjustments, and a high risk of human error. In many real-world scenarios, invoices arrive in different formats such as PDF, XLS, XLSX, or even HTML. Handling them individually can slow down reporting pipelines and create inconsistencies in structured data storage. The Problem with Manual Conversion Traditional invoice processing usually involves: Extracting line items manually from PDFs Reformatting Excel sheets for database compatibility Fixing inconsistencies in columns and values Rechecking for missing or misaligned data As invoice volume increases, these tasks quickly become inefficient and error-prone. Automated Approach to Invoice Conversion A more efficient approach is using tools that automatically parse invoice documents and convert them into structured CSV format. These tools typically: Read multiple file formats (PDF, XLS, XLSX, HTML) Detect table structures and line items Normalize data into rows and columns Export clean CSV files ready for spreadsheets or databases For example, uploading a multi-page invoice PDF can result in fully structured rows representing each item, without manual formatting adjustments. Why CSV Output Matters CSV remains one of the most widely used formats for: Accounting software imports Database ingestion Data analysis workflows Spreadsheet processing Having clean CSV output ensures compatibility across systems and reduces preprocessing work. Practical Impact Automating invoice-to-CSV conversion helps reduce: Repetitive manual data entry Formatting inconsistencies Processing time for bulk invoices It also improves accuracy when handling large datasets. Closing Note As data-driven workflows become more common in finance and operations, automating repetitive tasks like invoice conversion can significantly improve efficien

2026-06-20 原文 →
AI 资讯

Ship an AI agent without a kill switch and you are the incident

A finance bot kept issuing refunds in a loop because nobody built a way to stop it. Clean code. Sound logic. No off switch. A small bug became a long night. Here is the opinion most teams do not want to hear. Building the agent is the easy 80 percent. That off switch is the 20 percent that decides whether you can ship it at all. We celebrate the wrong milestone. Picture the demo where the agent books the meeting, writes the email, updates the record. That part is genuinely fun to build and genuinely easy now. Harder is the boring question nobody claps for. What happens when it is wrong, fast, and confident. An AI agent is not a chatbot. It takes actions in the real world. It spends money, deletes rows, messages real people, moves files. Wrong answers in a chat are annoying. A wrong action at machine speed is an incident with your name on it. So before features, I build the stop. One real kill switch is not a single button. Think of it as a small set of bounds that live from the first version. A spend ceiling, so a retry loop cannot drain the account A blast radius limit, so one task can never touch more than it should A human gate on anything irreversible, so the agent proposes and a person commits A global stop that halts everything in one move, with no redeploy None of that is glamorous. All of it is what lets you sleep at night. Teams skip this for a reason that feels rational in the moment. Bounds feel like negative work. They never show up in the demo. Your agent runs fine without them right up until the one time it does not, and that one time is the only time anyone remembers. Here is the reframe that changed how I build. Treat the stop as the feature that makes an agent shippable. Bolt it on at the end and you have already shipped a liability that happens to pass the demo. Honest about the trade-off. Bounds slow you down. You will watch the agent pause for an approval it could technically have skipped, and it will feel like friction. That friction is the pric

2026-06-19 原文 →
AI 资讯

Exploring 5-Minute Prediction Markets: Data, Speed, and Building an Edge

The “5-minute market” concept is gaining attention because of how fast new prediction rounds appear and how quickly volume builds up. Each cycle is short, which creates both opportunity and risk for anyone trying to analyze or trade it. In this article, I’ll break down how I’ve been approaching this space from a data perspective, how I’m thinking about building an edge, and the tools I’ve been experimenting with. What is the 5-minute market? A 5-minute market is a fast-cycle prediction or trading window where outcomes resolve quickly and new markets appear frequently. Compared to longer timeframes (like 15-minute markets), these shorter cycles: Generate more trading opportunities per hour Require faster data collection and processing Make latency and execution extremely important Increase noise in price action Because of this, traditional slow analysis often doesn’t work well here. Data collection approach My current setup focuses on continuously pulling market data in real time. The idea is simple: Connect to a market data source (I’m using a Gamma API as part of the pipeline) Stream or request live market updates Store order book + price movement data Aggregate it into 5-minute windows for analysis The goal is to build a dataset that can later be used for backtesting and feature extraction. Right now, I’m mainly focusing on a single asset (PPC) to keep things simple while testing the pipeline. Where the potential edge might come from The key question is: can we predict short 5-minute movements better than random chance? Some areas I’m exploring: 1. Order book behavior Tracking: Liquidity changes Bid/ask imbalances Sudden volume spikes 2. Session-based behavior Some traders observe patterns during different market sessions: Asian session behavior London session volatility Overlap periods These may or may not hold in 5-minute markets, but they’re worth testing. 3. Micro momentum patterns Since markets reset frequently, short momentum bursts might matter more than lo

2026-06-19 原文 →
AI 资讯

What Does the Windows REFRESH button really do?

Hello, I'm Maneshwar. I'm building git-lrc, a Micro AI code reviewer that runs on every commit. It is free and source-available on Github. Star git-lrc to help devs discover the project. Do give it a try and share your feedback. I boot up my machine. The desktop loads. And before I open my editor, before I check Slack, before I do a single productive thing, I right-click an empty patch of desktop and hit Refresh . Then I do it again. And again. I am a person who can explain event loops and reason about cache invalidation, and yet here I am, mashing F5 on a static wallpaper like it owes me money. If you've never done this, congratulations, you're better than me. If you have ... welcome. You're among friends. First, let's kill the myth There's a folk belief that refreshing the desktop is a tiny act of system maintenance. A little spring cleaning. A gift to your hardworking CPU. It is not. Manually refreshing your desktop does not : free up RAM reduce CPU load clear some mysterious cache make your PC faster in any way, shape, or form All it does is tell Windows Explorer to redraw the current view . That's it. That's the whole feature. What's actually happening under the hood Here's the part that's actually interesting (we're devs, we live for the "actually"). Windows doesn't repaint your entire screen on every frame, that would be wildly wasteful. Instead it leans on a composition engine that, with help from your GPU when one's available, only redraws the regions that changed since the last frame. Already drawn elements get cached and reused. Icons, the taskbar, your wallpaper they're all mostly static, so mostly left alone. When something genuinely changes (you save a file, delete a folder, plug in a drive), the OS detects it and tells the composition engine: "hey, this little rectangle changed, repaint just that." The desktop refreshes itself, automatically, all day long, without you ever touching anything. So the manual Refresh button is really just a manual overrid

2026-06-19 原文 →
开发者

Startup 001

Every startup idea looks perfect... until you start building. The first version of PixoraCloud looked amazing on paper. Then reality hit. We discovered: Some features weren't necessary Some APIs were too complicated Some ideas solved our problem, not the user's problem So we changed them. A lot. That's where we are today. Not chasing perfection. Chasing simplicity. Building in public means admitting your first idea isn't always your best one. What's one thing you've completely changed after starting a project?

2026-06-19 原文 →
AI 资讯

Our Competitor Had an AI That Covered 97.2%. We Had a Spreadsheet and a Fake Quote. Guess Who Won.

You walk into the RFP briefing. Your competitor has 200 people, 97% AI coverage, and a 4-day delivery promise. You have 15 people and a proposal you haven't even finished writing. Do you bet on better tech, or on understanding people better — and playing dirtier when you have to? This story is your answer. Act I · The Crack When Finova's RFP landed, everyone in the industry knew how big this was. Cross-border payment system. Multi-currency settlement + compliance + risk. Their last deployment had a P0 incident — an exchange rate module drifted by four decimal places in an edge case, and audit chased it for two months. So Finova's CTO made it clear: a $1.8M contract, and whoever signs off owns the result. $1.8M. Enough to keep a small testing company alive for a whole year. Plenty of firms showed up at the briefing. But only two were real contenders. QualiGuard — mid-sized, just closed their Series A, 200 people, their own AI testing platform called Aegis. A $1.8M contract was barely a rounding error for them — but with Series A money comes the pressure to show revenue growth for the next round, and Finova was a trophy client in the cross-border payments space. The case study was worth more than the project itself. Derek stood at the podium, flipping through slides packed with numbers: Aegis delivers 97.2% test automation coverage. Full Finova platform testing in four business days. No "we'll try." Just "we can do it." VeriTest — small, fifteen people. Marcus spent the whole morning working the room with Finova's people. I sat in the back row with nothing. Marcus slid back over and leaned in: "Their PPT makes yours look like a joke." I didn't answer. I was watching Derek's boss. Sarah — QualiGuard's VP, Derek's direct supervisor. She sat in the front row, off to the side, and never once looked at Derek during his entire presentation. She was on her phone. As one of the few women running a technical department, I watched her longer than I watched Derek. When Derek fla

2026-06-18 原文 →
AI 资讯

My First Week on DEV — Badges, Game Jams, and Way More Than I Expected

I joined DEV at the start of January, but it's only really been in the past week or so that things clicked into place — and looking back, it's been a lot more eventful than I expected for "week one." What I Set Out to Do My original plan was simple: write a structured series covering iOS development with Swift and SwiftUI, one topic at a time, with anime examples thrown in to keep things fun. Strings, arrays, loops, functions — the building blocks. What I didn't plan for was everything else that happened alongside it. The June Solstice Game Jam Happened I saw the announcement for DEV's June Solstice Game Jam and, on a whim, decided to build something for it. A few hours later I had a fully working SwiftUI trivia game — Pride Trivia & Alan Turing Edition — with ten questions covering LGBTQIA+ history and Alan Turing's legacy, a rainbow progress bar, and a results screen with score-based messages. I'd never built and shipped something end-to-end like that before, let alone submitted it to a community challenge. Going from "let's see if this works in the simulator" to "this is live on GitHub with a demo video and a published writeup" in one sitting was honestly a bit of a blur. Then I Detoured Into Google AI Studio A few days later, I worked through the DEV Education Track for Google AI Studio and built MascotCraft Studio — an app that generates coding mascots using Gemini and Imagen. One prompt later, I had a fully deployed web app and a mascot named Octo-Byte , a cheerful deep-sea developer with eight arms and a talent for multitasking. That post sparked one of my favorite discussions so far — a few comments turned into a genuinely interesting conversation about how AI is shifting the bottleneck from "can I build this" to "what should I build, and how do I know if it's good." Not at all what I expected from a post about a cartoon octopus. The Badges Somewhere in all of this, I picked up: A 1 Week Community Wellness Streak badge, just from commenting on other people's

2026-06-18 原文 →
AI 资讯

I put my Claude Code sessions on Discord — and now it's a one-line plugin

About 7,000 developers install a little tool of mine every month. It has 7 GitHub stars. I think about that gap a lot — but it also means thousands of these cards are quietly running in Discord right now, which is the whole point. It's called claude-rpc , and as of today you can install it from inside Claude Code itself. What it is claude-rpc is a small Node daemon that takes the lifecycle events Claude Code already fires — session start, each tool call, token counts — and turns them into a live Discord Rich Presence card on your profile: current model, project, what tool is running, plus lifetime stats. Your friends see what you're building; you get a year heatmap of your own work. It's free, open source, and has zero runtime dependencies — the Discord IPC client is hand-rolled, so the entire supply chain fits in a single review. The new part: a Claude Code plugin Two lines, in the editor: /plugin marketplace add rar-file/claude-rpc /plugin install claude-rpc@claude-rpc The card shows up on your next session. That's it. The plugin itself is deliberately thin — one SessionStart hook that runs the same installer you'd run by hand ( npx claude-rpc@latest setup ) once, in the background, then gets out of the way. Claude Code measures it at ~0 tokens of context per session. The real package still does the real work: wiring hooks, holding Discord's local socket, starting at login. It's now the fifth way to install the same tool — npx , a curl one-liner, Homebrew, a Windows exe, and now this — so pick whatever fits your setup. How it actually works No magic: 5 hooks, one small state file, and a daemon that holds Discord's local socket. No polling, no network calls, no telemetry you didn't opt into. If you want to read it, start with src/discord-ipc.js . Try it Site + build log: https://claude-rpc.vercel.app Source: https://github.com/rar-file/claude-rpc Built solo, on weekends. If one of those 7,000 cards ends up being yours, a GitHub star is the cheapest possible way to

2026-06-17 原文 →