AI 资讯
Add tags and categories to any model with Laraterms
Sometimes you need tags on a model. The usual answer is a tags table, a pivot, a slug and a belongsToMany , and you write it again in the next project with slightly different columns. Laraterms replaces that with a config entry and a trait, and it comes with the parts you normally bolt on later: hierarchy, per-tenant isolation and translations. This is the simple path first, then the two features you reach for next. How to install One package, its config and two migrations. composer require edulazaro/laraterms php artisan vendor:publish --tag = laraterms-config php artisan vendor:publish --tag = laraterms-migrations php artisan migrate Step 1: define a taxonomy A taxonomy is a kind of label, declared in config/laraterms.php . Start with a flat tags taxonomy; the file already ships one you can keep. 'taxonomies' => [ 'tags' => [ 'hierarchical' => false , 'max_terms_per_model' => null , 'scope' => 'tenant' , ], ], Step 2: tag a model Add the HasTerms trait and the model can hold terms. Attaching is find-or-create: pass a label, and the term is created the first time and reused afterwards. use EduLazaro\Laraterms\Concerns\HasTerms ; class Post extends Model { use HasTerms ; } $post -> attachTerm ( 'Laravel' , 'tags' ); $post -> attachTerms ([ 'Laravel' , 'PHP' ], 'tags' ); $post -> syncTerms ([ 'Laravel' , 'Vue' ], 'tags' ); // replace the tag set $post -> termsIn ( 'tags' ); // read them back Filtering by tag is a query scope, so it composes with the rest of your query. Post :: whereHasTerm ( 'laravel' , 'tags' ) -> get (); Post :: whereHasAllTerms ([ 'laravel' , 'tutorial' ], 'tags' ) -> get (); Hierarchical categories Set hierarchical => true on a taxonomy and its terms form a tree. Read the whole tree in one query, and walk a term's ancestry. 'categories' => [ 'hierarchical' => true , 'max_terms_per_model' => 1 , 'scope' => 'tenant' , ], use EduLazaro\Laraterms\Support\TermTree ; $tree = TermTree :: for ( 'categories' ); // roots with children, one query $term -> b
AI 资讯
LinkBreeze. The self-hosted Linktree alternative. Migrate in 30 seconds. One-line install.
LinkBreeze is a self-hosted alternative to Linktree. I built it because Linktree's $15/mo Pro plan didn't justify the feature set, email capture is another $9/mo, embed widgets are paywalled, link scheduling is paywalled. I wanted something I actually own: my data on my server, no subscription, no tracking pixels. The interesting technical bit: the public page ships zero client-side JavaScript. The entire link-in-bio page, themes, animations, hover effects, QR codes, embed widgets, renders server-side as pure HTML/CSS. No React runtime, no hydration, no framework JS. The visitor downloads HTML + CSS + their fonts. Page loads in under 300ms. That's it. Feature gap vs. the competition (what pushed me to build this): Feature Linktree LinkStack LittleLink Shako LinkBreeze Price $15/mo Free Free Free Free Admin Panel ✅ Slow ❌ ❌ ✅ Fast Multi-Page Paid ❌ ❌ ❌ ✅ Migration Wizard ❌ ❌ ❌ ❌ ✅ Built-in Analytics Paid Basic ❌ ❌ ✅ Full External Analytics ✅ ✅ ❌ ❌ ✅ Email Capture Paid ❌ ❌ ❌ ✅ Embed Widgets Paid ❌ ❌ ❌ ✅ Link Thumbnails Paid ❌ ❌ ❌ ✅ Link Scheduling Paid ❌ ❌ ❌ ✅ Themes Paid Limited CSS only Config ✅ Full Token System + Import/Export Custom CSS ❌ ❌ ✅ ❌ ✅ Language Closed PHP HTML Astro TypeScript Docker Deploy N/A Complex Simple Simple One command License Closed AGPL MIT GPL MIT Live demo (read-only): https://linkbreeze-demo.omnirise.dev/alex Admin demo: https://linkbreeze-demo.omnirise.dev/login (demo / demo1234) Repo: https://github.com/Manak-hash/LinkBreeze I'd genuinely appreciate feedback, bug reports, or feature suggestions. What's missing compared to what you'd expect from a self-hosted tool like this?
AI 资讯
501 world recipes as an open dataset: per-serving nutrition, step timings, ingredient scaling rules (CC BY-SA 4.0)
Last month I wrote about building a 1,800-page calculator site solo. Since then the recipe hub on that site grew to 501 dishes from 127 countries — and today I'm releasing all of it as an open dataset. Download JSON (full dataset, ~2.6 MB): https://theunitools.com/data/unitools-recipes-v1.json CSV (one dish per row): https://theunitools.com/data/unitools-recipes-v1.csv Docs + sample record : https://github.com/farcrak/unitools-recipes Dataset page: https://theunitools.com/en/data What's inside 501 home-cooking recipes, 127 countries, bilingual (English + Russian, both written by hand — no machine translation) Per-serving nutrition (calories, protein, fat, carbs) on every single dish 3,200+ steps, each annotated with minutes Ingredients with stable ids and scaling rules : meat scales linearly with servings, salt and spices are damped — the way an actual kitchen scales a recipe, not naive multiplication Human-reviewed Wikimedia Commons photos with author + licence per photo Why the scaling rules matter Most recipe datasets store "2 tbsp salt for 4 servings" and leave scaling to you. Multiply salt linearly to 16 servings and the dish is inedible. Each ingredient in this dataset carries a scaling field ( linear | damped | fixed ), so a portion calculator can be built directly on top of the data. That's exactly how the recipe pages on the site work. Licence CC BY-SA 4.0 — free for commercial use. Credit "UniTools — theunitools.com" and share derivatives under the same licence. Photos carry their own Commons licences (in the data). Honest caveats Nutrition is computed from ingredients, not lab-measured — a planning reference, not medical data. The dataset is maintained by one person; if you spot an error, open an issue on the repo and the fix lands in the next version. If you build something with it — a meal planner, a viz, a model fine-tune — I'd genuinely love to hear about it in the comments.
AI 资讯
Reasonix - Deepseek: A Terminal Coding Agent Built Around the Thing Everyone Else Ignores
Most terminal coding agents are architecturally similar: a loop, a tool registry, some context management, a TUI. Reasonix picks a different thing to optimize for, and it is a thing that shows up on your bill rather than in a demo video. The tagline is "engineered around prefix-cache stability — leave it running." That phrase is doing a lot of work, so let's unpack it. Why prefix caching is the whole pitch DeepSeek's API, like several others, caches the prefix of your prompt. If the next request starts with the exact same token sequence as the previous one, the provider serves those tokens from cache and bills them at a small fraction of the normal input rate. Cache hits are dramatically cheaper than cache misses. Here is the catch: it is a prefix cache. The match has to start at token zero and run forward. Change one character near the top of your context and every token after it is a miss. Now think about what a typical agent harness does over a long session. It re-summarizes the conversation. It injects a fresh timestamp or a re-scanned directory tree at the top. It reorders tool definitions. It rewrites the system prompt when you switch modes. Every one of those is a mutation near the front of the context, and every one of them silently invalidates the entire cache. The result is an agent that feels fine and costs several times what it should. You do not notice, because nothing errors. You just watch the number go up. Reasonix's central design constraint is: don't do that. Keep the front of the context stable, append rather than mutate, and put churn where it costs least. What that looks like in practice A small, stable environment summary is injected at startup rather than regenerated each turn. Stale tool output gets snipped and pruned before summary compaction kicks in, so a giant cat result from twenty turns ago is not still sitting in your prefix. The built-in tool schema contract is documented and regression-reviewed, because a silent tool-definition reshu
AI 资讯
LoopX: A Control Plane for AI Agents That Have to Keep Working for Days
If you have ever pointed a coding agent at a multi-day goal, you know the failure mode. It is not that the model writes a bad function. It is that on turn 40, the agent no longer remembers what the objective was, which decision you already made, what is out of scope, or what the last run actually proved. The context window rolled over, and the plot went with it. LoopX is an attempt to fix that specific problem. It calls itself "loop engineering for long-running AI agents," and it is a local control plane that sits above your agent runtime rather than replacing it. The one-sentence version Your agent (Codex, Claude Code, Cursor, whatever) executes bounded loops. Something (a heartbeat, a cron job, you hitting enter) triggers the next loop. LoopX holds the state that has to survive between those loops. The project draws the separation like this: Layer Role Codex / Claude Code / Cursor Execute a bounded agent loop: read, write, run commands, respond Goal mode / automation / CLI / TUI Trigger or schedule the next loop LoopX Preserve goals, gates, todos, run history, quota, evidence, handoff state That third row is the whole product. LoopX is not an executor and not an autonomous production controller. It is a state kernel with a CLI. Why "just use a todo file" isn't enough A TODO.md plus a long system prompt gets you surprisingly far. It falls over once any of these become true: The goal changed halfway through, and nothing recorded why . A decision genuinely needs a human, and that request evaporated into a chat message nobody read. Two agents are touching the same repo and neither knows who owns what. The last run claimed success, and there is no artifact proving it. Some work is safe and read-only, some crosses into writes, production, or private data, and the distinction lives only in your head. LoopX makes those things explicit and machine-readable, which is what lets a loop run longer without becoming less accountable. The concepts, in plain English Lifetime goals
AI 资讯
SAFi: Governance as the Runtime, Not an Add-On
Comparisons between SAFi and techniques such as reinforcement learning from human feedback, or RLHF, are useful only up to a point. Constitutional AI is a closer conceptual comparison because it introduces explicit principles into the process of generating and evaluating responses. Even so, these approaches address a different layer of the problem. RLHF and Constitutional AI primarily shape how a model behaves. SAFi governs how an AI agent operates. That distinction matters because an AI agent is not only a language model producing text. It may interpret requests, reason about possible responses, decide whether to act, call tools, access information, modify data, and produce an answer that must be accountable to the organization deploying it. The conventional architecture: the model at the center Much of today’s AI governance consists of filters, classifiers, guardrails, monitors, and policy checks placed around the model. The general pattern looks like this: A request reaches the model. The model generates a response or proposes an action. External controls inspect the input, output, or tool request. The system allows, blocks, modifies, or records the result. This architecture can be valuable. External controls can detect prohibited content, restrict certain actions, and provide monitoring or enforcement. They are often necessary parts of a responsible deployment. But the architecture still places the model at the center of the process. Governance is positioned around the model as an additional control mechanism. In many systems, the evidence needed for explanation and audit is also collected after the model has produced its output or proposed its action. That creates a basic separation between execution and governance: The model produces the draft. The governance system evaluates the draft. The monitoring system records what happened. The controls may be effective, but governance remains an external activity surrounding the primary intelligence. SAFi’s architectur
AI 资讯
Shopify says AI search is driving more traffic and sales, not replacing Google
Shopify says AI isn’t cannibalizing search traffic the way it has for publishers. Instead, AI-driven traffic and orders to Shopify stores tripled year over year in Q2.
AI 资讯
The proxy industry needs you to never open the network tab
I run 75 scrapers in production. Three of them do any fingerprint spoofing. Maybe five use residential proxies. The rest run on plain datacenter IPs or no proxy at all, and they have been running for months. If you learned scraping from blog posts, that number probably sounds wrong to you. Every tutorial you have read starts the same way: sign up for a residential pool, install a stealth browser, randomize your fingerprint, throttle like a human. Then, on step five, you finally get to look at the actual website. That order is backwards, and it is backwards on purpose. Proxy companies write most of the scraping content on the internet. They were never going to write "you probably do not need us." The scraper with the $80 a month costume Last month my guy sent me his Greenhouse job board scraper to fix. It had everything. Puppeteer with the stealth plugin. Rotating residential proxies. Randomized mouse movements between actions. Human-like typing delays. It still kept dying. So I did the thing nobody had done: opened the page in a normal browser with devtools up. The entire job list was sitting in one XHR request to a public JSON endpoint. No auth. No cookies. A rate limit so loose I never managed to hit it. I deleted basically his entire codebase and replaced it with a fetch call. It has not broken since. He had been paying for proxies for months to hit an endpoint that does not care who you are. This was not a rare lucky case. This is most cases. The 20 minute method What I do on every new target, before writing a single line of code: Open the network tab, filter to XHR/fetch. Reload the page. Click around. Paginate. Search. Find the request that returns the actual data. It is usually JSON and usually obvious. Right click, copy as cURL. Paste it in a terminal and start deleting headers one at a time. Rerun after each delete. Whatever survives step five is your scraper. Most of the time the answer is a user agent header and nothing else. Sometimes a referer. Occasion
AI 资讯
I built skill.md file to stop AI from Generic UI SLOP
Here's the problem. Every AI coding agent (Cursor, Codex, Claude Code, whatever) is trained on millions of websites. Most of those websites are average. So when you prompt "build me a landing page," the model gives you the average of everything it's seen: a centered hero, a purple gradient, three equal feature cards, Inter font, ease-in-out , done. It's not broken. It's just mediocre by default. I'm 17 and I got tired of fighting this in every conversation. So I built VibeCurb : a collection of strict constraint skill files, that force AI agents to actually think about design before they touch code. How it works Every skill follows the same four-phase pipeline: Design Read - The agent reads your reference image, existing codebase, or brief and extracts design signals: typography, palette, layout, focal element, spacing. No code is written here. Quality Gate - The extraction has to pass before the agent is allowed to generate anything. It must prove it understands the design direction, not just spit out defaults. Precise Build - Code generation happens against the extraction, not against the model's built-in idea of what a "website" looks like. Each skill has its own build sequence. Visual Diff - The output is checked against the reference using PASS/FAIL tables across composition, typography, color, motion, and responsiveness. If it drifts, it gets caught. There's also an inline drift rejection layer. It catches known AI defaults (CSS keyword easings like ease-in-out , AI-purple #7c3aed gradients, generic glassmorphic cards, placeholder Lorem ipsum content) and flags them before they make it into the output. The skills Each skill constrains a specific problem space: awwwards-hero - Hero sections only. Six documented architectures (Cinematic Center, Editorial Split, etc.) with implementation blueprints. The agent picks one and commits. awwwards-sections - Pricing tables, bento grids, feature highlights, footers. Same pipeline, different element constraints. awwwards-
开源项目
🔥 appwrite / appwrite - Appwrite® - complete cloud infrastructure for your web, mobi
GitHub热门项目 | Appwrite® - complete cloud infrastructure for your web, mobile and AI apps. Including Auth, Databases, Storage, Functions, Messaging, Hosting, Realtime and more | Stars: 56,779 | 108 stars this week | 语言: TypeScript
开源项目
🔥 RVC-Project / Retrieval-based-Voice-Conversion-WebUI - Easily train a good VC model with voice data <= 10 mins!
GitHub热门项目 | Easily train a good VC model with voice data <= 10 mins! | Stars: 37,111 | 338 stars this week | 语言: Python
开源项目
🔥 pnpm / pnpm - Fast, disk space efficient package manager
GitHub热门项目 | Fast, disk space efficient package manager | Stars: 35,977 | 15 stars today | 语言: Rust
开源项目
🔥 czlonkowski / n8n-mcp - A MCP for Claude Desktop / Claude Code / Windsurf / Cursor t
GitHub热门项目 | A MCP for Claude Desktop / Claude Code / Windsurf / Cursor to build n8n workflows for you | Stars: 22,605 | 68 stars today | 语言: TypeScript
开源项目
🔥 melgarafael / DeskcommCRM - Open-source AI sales OS — self-hosted CRM with native AI age
GitHub热门项目 | Open-source AI sales OS — self-hosted CRM with native AI agents + WhatsApp (WAHA). Open alternative to Kommo, Octadesk & Intercom for any business that sells by chat. MCP-ready, multi-tenant, LGPD. | Stars: 326 | 29 stars today | 语言: TypeScript
开源项目
🔥 ln-dev7 / circle - UI - Project management interface inspired by Linear. Built
GitHub热门项目 | UI - Project management interface inspired by Linear. Built with Next.js and shadcn/ui, this application allows tracking of issues, projects and teams. | Stars: 3,014 | 85 stars today | 语言: TypeScript
开源项目
🔥 ever-co / ever-gauzy - Ever® Gauzy™ - Open Business Management Platform (ERP/CRM/HR
GitHub热门项目 | Ever® Gauzy™ - Open Business Management Platform (ERP/CRM/HRM/ATS/PM) - https://gauzy.co | Stars: 4,224 | 109 stars today | 语言: TypeScript
开源项目
🔥 eze-is / web-access - 给 Claude Code 装上完整联网能力的 skill:三层通道调度 + 浏览器 CDP + 并行分治
GitHub热门项目 | 给 Claude Code 装上完整联网能力的 skill:三层通道调度 + 浏览器 CDP + 并行分治 | Stars: 8,544 | 16 stars today | 语言: JavaScript
开源项目
🔥 NovaSky-AI / SkyRL - SkyRL: A Modular Full-stack RL Library for LLMs
GitHub热门项目 | SkyRL: A Modular Full-stack RL Library for LLMs | Stars: 2,123 | 6 stars today | 语言: Python
开源项目
🔥 blader / humanizer - Agent skill that removes signs of AI-generated writing from
GitHub热门项目 | Agent skill that removes signs of AI-generated writing from text | Stars: 33,621 | 397 stars today | 语言: Python
开源项目
🔥 didilili / ai-agents-from-zero - 🚀 2026 最系统的 AI Agent 速成指南|智能体实战教程 · 完整学习路径 + 实战项目 + 面试题库 · 对
GitHub热门项目 | 🚀 2026 最系统的 AI Agent 速成指南|智能体实战教程 · 完整学习路径 + 实战项目 + 面试题库 · 对标大模型应用开发工程师岗位 · 覆盖LangChain / LangGraph / Coze / Dify / MCP / skills / LLM / RAG / 提示词 · 企业级部署与微调 · 从0到企业级落地 + 从学习到上线项目 + 面试准备一体化 | Stars: 3,439 | 43 stars today | 语言: Python