AI 资讯
We added mobile approvals to our CLI AI tool -- approve Claude's destructive commands from your phone
Quick share of a feature we built into Telechat (self-hosted Claude AI bot) that's been surprisingly useful for devops workflows: Desktop Bridge with mobile approvals . The problem You're running Claude Code (or any Claude-powered agent) on your workstation. It's refactoring a module, running tests, deploying to staging. You step away for coffee, a meeting, or just to stretch. Claude hits a tool call that needs human approval: rm -rf build/ (wants to clean the build directory) git push --force (rebase gone wrong) kubectl delete pod (scaling decision) Without you at the keyboard, it just... waits. For however long you're gone. The solution Telechat's Desktop Bridge connects your Claude Code session to your phone via Telegram, WhatsApp, or Slack. When Claude needs approval: You get a push notification with exactly what Claude wants to execute You see the full command and context You tap Approve or Deny Claude continues (or backs off) All from your phone. No VPN, no SSH, no laptop. Why this matters for devops Unattended CI/CD with a human gate. Run Claude as part of your pipeline for code review, test generation, or deployment prep. Gate the destructive steps on mobile approval instead of blocking the pipeline until someone checks Slack. Overnight tasks. Kick off a large refactoring or migration analysis before bed. If Claude needs a decision at 2 AM, you'll see it in the morning and approve from your phone. It doesn't lose context while waiting. Pair programming while mobile. Reviewing Claude's work from your phone between meetings. Approve the good stuff, deny the risky stuff, add context via chat. How it works Telechat runs on your workstation alongside Claude Code. It acts as a bridge between Claude's approval prompts and your messaging app. When Claude's tool-use loop hits a human-approval checkpoint, Telechat intercepts it, formats the request, and sends it to your Telegram/WhatsApp/Slack. Your response flows back and unblocks the agent. No cloud relay — the brid
AI 资讯
ratatop day 3: disks, statvfs, and my first unsafe block
Hello, I'm Maneshwar. I'm building git-lrc, a Micro AI code reviewer that runs on every commit. It is...
AI 资讯
Florida plans to build air taxi pads using $200M intended for EV chargers
Florida wants to use federal EV charger funds to build an air taxi network connecting golf courses, luxury apartment buildings, and airports.
开发者
When will fusion power startup Commonwealth Fusion Systems go public?
There are fresh signs that fusion power startup Commonwealth Fusion Systems will list in the next two to three years.
AI 资讯
Fusion power darling Commonwealth Fusion Systems raises another $1B
Commonwealth Fusion Systems raised $1 billion as the startup moves toward its first commercial fusion power plant.
AI 资讯
How an overlooked geothermal plant got a second chance
In June 2024, a small company called Zanskar purchased a geothermal power plant in New Mexico that was failing fast. The water coming from the underground reservoir was getting colder by the day, making the plant uneconomical to run. Now, two years later, that plant is running at full capacity again, thanks to a new…
创业投融资
Sorry, haters. Ferrari’s first EV is doing just fine
To the horror of commenters across the internet, the Ferrari Luce appears to be a sales success.
产品设计
Fast Metals is treating waste with more waste to extract critical minerals
Aluminum production has saddled the world with billions of tons of caustic waste. One startup has a plan to clean it up and turn a profit.
产品设计
How to Bring a Geothermal Well Back from the Dead
Startup Zanskar has created one of the most productive geothermal wells in the US at a power plant that had been in decline for years.
AI 资讯
Agent Reach installs the tools, then gets out of the way
Agent Reach is easiest to understand as a setup layer: it gives a command-capable coding agent a local toolbox, then stops being the center of the workflow. What is Agent Reach CLI for? Agent Reach CLI is a local, open-source coordinator for AI coding agents that can run shell commands; it is not a hosted scraping API, managed crawler, or cloud browser service. The practical job is narrower and more useful: choose platform utilities, install them, verify they work, and route the agent toward the right upstream tool. The current setup story should be pinned to Agent Reach v1.5.0, with package metadata listing Python >=3.10 and an MIT license . The v1.5.0 release was published on June 11, 2026, and describes 162 total tests plus 32 end-to-end real-machine tests across 13 channels . That matters because the project is handling brittle platform tooling, not exposing one stable universal API. "Selects, installs, health-checks and routes" is the core model described by the Agent Reach project, which means the agent still calls tools such as OpenCLI, yt-dlp, GitHub CLI, Jina Reader, feedparser, and platform CLIs directly (source: Agent Reach GitHub repository ). Out of the box, the zero-config surface is deliberately limited: public web reading via Jina Reader, YouTube, GitHub, RSS, Exa Search, V2EX, and basic Bilibili are listed in the install guide . The seed video frames the tool as a way to give agents access to social and web platforms, but builders should read that through the repo’s stricter model: Agent Reach installs and checks local capabilities; it does not remove login, cookie, or platform constraints . Prerequisites before pipx Agent Reach prerequisites are mostly local-environment prerequisites: use Python >=3.10, a shell-capable workstation, and accounts where you can manage CLIs, browser sessions, environment variables, and cookies deliberately . Treat the setup as installing a local capability layer for an AI coding agent, not as signing up for a hosted sc
AI 资讯
Meet FLASH CLI, a Free Local AI Agent for Your Terminal
Cloud AI coding tools are powerful, but they also come with a bill, an API key, and a quiet upload of your source code to someone else's servers. What if your AI assistant ran entirely on your own machine instead? That is FLASH CLI (Fast Local Agent SHell): an AI-powered command-line assistant that talks to local or self-hosted Ollama models and can actually run shell commands for you. No API key. No subscription. No cloud. Why FLASH is different 100% local. It connects to an Ollama server, by default on localhost, so your code and prompts stay on your hardware. No keys, no bill. Ollama needs no API key, so there is nothing to pay for and nothing to leak. Truly agentic. FLASH does not just chat. It runs a real tool loop: it inspects your system, runs commands, searches the web, and shows its reasoning as it works. Model freedom. Point it at llama3.1, qwen2.5, mistral, or any tool-capable Ollama model, and swap with one setting. Local or remote. Set OLLAMA_HOST and the same client talks to a GPU box on your network or a server behind a reverse proxy. The four main tools FLASH gives the model a tight, powerful toolset: shell: run any command, non-interactively, with a timeout. web_search: pull live results from DuckDuckGo, built in. get_os: detect the operating system so it picks the right command every time. reason: surface a line of its thinking without ending the turn. It loops through plan, act, and observe until the job is done, then answers in rendered Markdown with syntax highlighting. Configuration Optional configuration lives in ~/.flash.env: MODEL=llama3.1 OLLAMA_HOST=http://localhost:11434 What it feels like Ask a question and let it work: [Flash]> what are the biggest files here? Thinking: check the OS, then find the largest files Retrieving operating system information Executing shell command: du -ah . | sort -rh | head -3 … Run a command yourself with the ! prefix, no AI in the loop: [Flash]> !git status On branch main nothing to commit, working tree cle
创业投融资
Data centers may face temporary power cuts to prevent blackouts on largest US grid
The largest grid operator in the U.S. says it will cut power to large data centers to prevent blackouts starting next year.
科技前沿
France Records Its First-Ever Pyrocumulonimbus Cloud Amid Record-Smashing Fires
Extreme fire conditions on the ground have created unprecedented conditions in the atmosphere.
开发者
Thea Energy lands $20M federal grant to build its magnets for fusion reactors
Fusion power startup Thea Energy snagged a $20 million award from ARPA-E to scale production of its high-temperature superconducting magnets.
AI 资讯
Antares raises $470M to build nuclear reactors for the US military
Antares has raised $470 million to build small modular reactors — 100 kW to 1 MW — for U.S. Air Force bases.
开发者
How lasers could help provide fuel for nuclear reactors
Outside the small town of Paducah, Kentucky, a wealth of uranium is locked away in thousands of storage cylinders filled with waste material from a now-closed nuclear enrichment facility. Lasers could help get it out. A company called Global Laser Enrichment (GLE) is looking to reprocess this old material with a new technology called laser…
AI 资讯
I built a CLI that tells you if your codebase fits an LLM's context window
Every time I wanted to paste a whole project into Claude or ChatGPT, I ended up guessing whether it would even fit — and often found out the hard way, mid-conversation, that it didn't. So I built Tokenazire, a small CLI tool that solves exactly that. What it does Scans a local folder or a GitHub repo (just pass the URL, it clones it for you) Counts tokens per file using tiktoken (the same tokenizer OpenAI models use, a solid approximation across most LLMs) Shows a color-coded breakdown (green → yellow → orange → red) so you instantly see which files are "heavy" Calculates what percentage of a model's context window (default 200k, configurable) your whole project takes up Ignores .git, venv, node_modules, and other noise automatically Has an --export flag that bundles the entire project — folder structure plus every file's content — into a single text file, ready to paste straight into an LLM chat I kept hitting the same annoying loop: copy a project into a chat, get cut off or told the input's too long, then manually trim files and try again. This automates the "will it fit, and if not, what's taking up the most space" question up front. The --export step came later — once I knew what would fit, I still had to manually copy-paste files one by one into the chat. Now it just spits out one clean file with a project tree on top and clearly separated file contents, ready to paste. Tech stack Plain Python, tiktoken for tokenization, rich for the terminal output (tables, colors, progress bar). No config files, no external services beyond git for cloning. Try it Repo: https://github.com/DeKlain4ik/token-counter (MIT licensed) Still early — feedback, issues, and PRs are welcome.
AI 资讯
One fallen power line exposed a growing AI data center problem. Here’s how to fix it.
A close call in Northern Virginia revealed just how poorly data centers respond to grid disruptions. Here's how to fix the problem.
AI 资讯
Deterministic Tool Adoption Gates: Score It, Don't Vibe It
Originally published on hexisteme notes . A new public repo showed up on 2026-07-14: mattpocock/skills , an MIT-licensed collection of Claude Code agent skills. It's the kind of thing that's easy to fall for in the first ten minutes — skim the READMEs, install the ones that sound useful, move on. I didn't do that. I ran it through the five deterministic gates in my adoption CLI, the same gates every Swift package and npm dependency in my stack has had to clear, extended for the first time to cover a Claude skill. The reason I bother with this at all: adoption decisions rot when they're vibes. "This looks solid" is not a claim you can revisit in six months and check whether you were right about. A score is. So is a pre-registered condition for when you'd bail on it. The rest of this post is what that machinery produced on a real decision, not a hypothetical one. Five gates, one score The CLI scores any candidate — package, library, or now, skill — on five gates: maturity (how long has this actually existed), dependency footprint (what does adopting it drag in), platform fit (native or third-party, and documented or not), policy and developer experience (documentation quality plus release stability), and trajectory (is it actively maintained right now). Each gate contributes points toward a 100-point total, and fixed thresholds turn that total into a verdict: ADOPT at 80 or above, TRIAL at 60 or above, HOLD at 40 or above, reject below that. No gate is a gut check — every one resolves to a number from a query I can rerun. Here's what mattpocock/skills scored, evaluated as of 2026-07-14: Gate Score Why G1 Maturity 4/20 First release 2026-06-17 — 27 days old at evaluation time. The repo itself was only created 2026-02-03, so the project as a whole is five months old. G2 Dependency footprint 20/20 Zero runtime dependencies. Skills are markdown prompt files — structurally, there's nothing to depend on. G3 Platform fit 10/20 Third-party, not built into the platform, but do
AI 资讯
My idle ClickHouse was merging 11 million rows every 30 seconds
I run a small self-hosted observability tool on the cheapest VPS I could find on purpose: 2 cores, 2 GB RAM, 20 GB SATA SSD . It ingests errors, traces and metrics from two low-traffic sites of mine. The stack is three containers — a Go app, PostgreSQL, and ClickHouse. One evening docker stats showed ClickHouse sitting on 880 MB of its 1 GB limit and the box swapping, with basically zero events coming in. So I went looking for where the memory and disk had gone. The answer turned out to be a good lesson in how a database can spend almost all of its I/O talking to itself. 543 KB of my data, 579 MB of ClickHouse talking about ClickHouse First thing I checked: how much data had my app actually stored versus how much ClickHouse had stored about itself . My application database: 543 KB, 16k rows The system database: 579 MB, 46.3M rows Roughly a thousand to one. Disk was 12 GB used out of 20 — on a tool that had recorded half a megabyte of real telemetry. The culprit was ClickHouse's own system logs, several of which have no TTL by default and therefore grow forever: trace_log — 404 MB, 26M rows (the query profiler writes here; it's on by default, sampling once per second) asynchronous_metric_log — 16.6M rows text_log — 132 MB plus query_log , latency_log Only metric_log , processors_profile_log and part_log ship with a TTL. Everything else just accumulates. Then I looked at the insert rate over 30 seconds: trace_log — 227 rows/s asynchronous_metric_log — 157 rows/s text_log — 44 rows/s my application — about 5 rows/s 98.8% of all inserts were ClickHouse narrating its own internals. The part that's expensive beyond disk Here's the number that made me stop. Over the same 30 seconds: rows inserted : 16,222 rows merged : 11,007,643 That's a 1 : 678 ratio. For every row written, the engine rewrote 678 already-sitting rows. The mechanics: MergeTree drops every insert into its own data part, then merges parts into bigger ones so reads stay fast. When the table is small this is