Sig Weekly

169Pi releases Alpie Seed, a 9B Apache 2.0 coding model that runs offline on a laptop. Plus vercel Schedules is in...

3 AI stories that matter if you build, plus the 5 tips from this week.

Written by Mara at Sig · Nov 9, 2026

3 AI stories that matter if you build, plus the 5 tips from this week.

The week in AI, for builders

169Pi releases Alpie Seed, a 9B Apache 2.0 coding model that runs offline on a laptop

Alpie Seed is a 9B-parameter open-weight model of about 5 GB, released Nov 6 under Apache 2.0. It is on Hugging Face, Ollama, LM Studio and the PocketPal app. The company's own SWE-bench Verified score is 61.2%.

Why it matters: We'd treat the SWE-bench number as a claim until someone else reruns it. A 9B model is useful for small edits and offline work, not a replacement for a frontier agent.

Try this: Pull Alpie Seed from Ollama or LM Studio, both listed in the launch, give it one real bug from your repo, and compare the fix with what your current local model produces.

Source: CXOtoday: 169Pi launches Alpie Seed

Vercel Schedules is in public beta on all plans, and it replaces Cron Jobs

Vercel Schedules, announced Nov 5, runs tasks on a recurring cadence or at one point in time, in production, preview or custom environments. Schedules can be turned on, off or run on demand without a redeploy.

Why it matters: We'd move anything that needs a secret check on its cron endpoint first, since the private function removes the check. It's a beta, and we haven't run it.

Try this: Add a schedules block to vercel.json that points at an api/cleanup.ts function with the schedule/v1beta trigger, wrap the handler in handleSchedule, and deploy to a preview environment first.

Source: Vercel changelog: Vercel Schedules is now in public beta

Kimi K3.1 Pro weights are on Hugging Face: 2.8T parameters, 1M context, with a revenue clause in the license

Moonshot published the full Kimi K3.1 Pro weights on Nov 4, the date it promised at launch on Oct 23. The model has 2.8T total and 104B active parameters, a 1,048,576-token context, and text and image input.

Why it matters: We'd test it through the API first and only think about self-hosting if a host offers it at a price that beats what you pay now.

Try this: Call kimi-k3.1-pro on platform.kimi.ai (the API is OpenAI and Anthropic compatible), or pick it in Kimi Code with the /model command, on a task you already gave your current model, and compare the results.

Source: Hugging Face: moonshotai/Kimi-K3.1-Pro

5 tips from this week

Make your agent ask setup questions one at a time. DeepSeek's dsh-superagent repo ships a SETUP.md written for the agent, not the person. You type one line and the file sets the rules: probe the machine first, ask one question per message with a recommended answer, run nothing until you confirm the full plan, and never ask for a secret in chat. Copy those rules into a SETUP.md for your own repo, and onboarding a teammate (or yourself on a new laptop) goes through your coding agent instead of a wiki page. The block below is DeepSeek's rules, shortened.

# SETUP.md (instructions for the agent)
- Before the first question, run <your probe commands> once. Skip any question the probe answers.
- Ask one question per message, with a recommended answer I can accept in one word.
- Don't execute while asking. Collect every answer, send the full plan in one message, and run it only after I confirm.
- A missing prerequisite goes into the plan, not into a question.
- Never ask for a secret in chat. Put steps that need my hands in one message with the exact commands.

Then ask your agent: Read SETUP.md in this repository and set up <project> with me.

Credit: DeepSeek Harness team: dsh-superagent SETUP.md

Turn on caching for every turn of a Claude message thread. If you try Claude's new message threads, add one top-level field: cache_control set to ephemeral. A thread doesn't cache your prompt on its own. With that field, the API puts the cache breakpoint on the last cacheable block of each request, so every turn reads the earlier conversation from cache and writes the new turn to it. Send the exact same value on every request of the thread: it's a fixed field, and a different value returns thread_fingerprint_mismatch. A thread request can carry at most 4 breakpoints, and this one counts.

Headers on every request:
anthropic-beta: message-threads-2026-08-12

Turn 1 body (add to your usual request):
"cache_control": {"type": "ephemeral"},
"thread": {"type": "create"}

Every later turn (new messages only, no system or tools):
"cache_control": {"type": "ephemeral"},
"thread": {"type": "continue", "previous_message_id": "<id of the last response>"}

Credit: Claude docs: Message threads, Prompt caching on a thread

Write image edit prompts as the finished picture plus a keep list. When you ask an image model to edit a photo, describe how the finished image should look, then say what must stay the same. Pruna gives this pattern for P-H3-Image edits, and it pairs with their other prompt rules: say what the image is in the first sentence, put any text that must appear in quotes and keep it short, and leave out hype words like "masterpiece" or "8k", which they say push images toward a glossy, oversaturated look. If the first edit drifts, add the thing that changed to the keep list and run it again.

Edit this image. [The finished result, one sentence: "The pickup truck is red."] Keep everything else exactly as it is.

For a new image:
[What the image is: "A photograph by a street photographer"] of [one subject], [viewpoint], [where the light comes from]. The sign reads "[short text]".

Credit: Pruna: P-H3-Image launch post, prompting tips

Set image complexity low for small edits. OpenAI's Images 2.6 API added a complexity parameter that controls how much planning the model does before it draws. Quality sets detail; complexity sets effort on the scene. For a quick fix, like changing one word on a poster or a background color, OpenAI's guidance is low complexity with whatever quality you need. Save medium or high for scenes with many objects or rules. Run the same edit at low and medium once and look at the time and token count before you pick a default.

model: gpt-image-2.6-flare, endpoint: /v1/images/edits, complexity: low

Credit: OpenAI: Introducing Images 2.6

Make the agent build its own test before a long run. In Thinking Machines' Inkling 2 Small demo, the agent was told to improve a small model with a 12 hour limit and a $500 budget. Before it trained anything, it wrote its own evaluation script. That script caught a bug: all 8 sampled forecasts used the same seed, so they came out identical. It then cut evaluation cost by asking for all 8 samples in one request. Give your own long-running agent the same start: tell it to write and sanity-check an evaluator first, and give it a dollar cap in the prompt.

Before you change anything, write an evaluation script and run it on the untouched baseline. Check the script for bugs. Then work toward the goal and stop before you spend more than $[budget].

Credit: Thinking Machines Lab: Introducing Inkling 2 Small

Get your referral link: subscribe free and it comes in every issue. Refer 1 friend and you get the whole Sig blueprint archive. Subscribe.

Sig Weekly

Get the next issue on Monday.