MurphyA/hacker-news huggingface dataset:
Show HN: OpenSymbolicAI – Agents with typed variables, not just context stuffing
by rksart | 2026-02-03 20:19:09+00:00
Hi HN,

We've spent the last year building AI agents and kept hitting the same wall: prompt engineering doesn't feel like software engineering. It feels like guessing.

We built OpenSymbolicAI to turn agent development into actual programming. It is an open-source framework (MIT) that lets you build agents using typed primitives, explicit decompositions, and unit tests.

THE MAIN PROBLEM: CONTEXT WINDOW ABUSE

Most agent frameworks (like ReAct) force you to dump tool outputs back into the LLM's context window to decide the next step.

Agent searches DB.

Agent gets back 50kb of JSON.

You paste that 50kb back into the prompt just to ask "What do I do next?"

This is slow, expensive, and confuses the model.

THE SOLUTION: DATA AS VARIABLES

In OpenSymbolicAI, the LLM generates a plan (code) that manipulates variables. The actual heavy data (search results, PDF contents, API payloads) is stored in the Python/runtime variables and is never passed through the LLM context until a specific primitive actually needs to read it.

Think of it as pass-by-reference for Agents. The LLM manipulates variable handles (docs), while the Python runtime stores the actual data.

EXAMPLE: A RAG AGENT

Instead of the LLM hallucinating a plan based on a wall of text, it simply writes the logic to manipulate the data containers.

class ResearchAgent(PlanExecute):

@primitive
def retrieve_documents(self, query: str) -> list[Document]:
"""Fetches heavy documents from vector DB."""
# Returns heavy objects that stay in Python memory
return vector_store.search(query)

@primitive
def synthesize_answer(self, docs: list[Document]) -> str:
"""Consumes documents to generate an answer."""
# This is the ONLY step that actually reads the document text
context = "\n".join([d.text for d in docs])
return llm.generate(context)

@decomposition(intent="Research quantum computing")
def _example_flow(self):
# The LLM generates this execution plan.
# Crucially: The LLM manages the 'docs' variable symbol,
# but never sees the massive payload inside it during planning.
docs = self.retrieve_documents("current state of quantum computing")
return self.synthesize_answer(docs)

agent = ResearchAgent() agent.run("Research the latest in solid state batteries")

DISCUSSION

We'd love to hear from the community about:

Where have you struggled with prompt engineering brittleness?

What would convince you to try treating prompts as code?

Are there other domains where this approach would shine?

What's missing to make this production-ready for your use case?

The code is intentionally simple Python, no magic, no framework lock-in. If the approach resonates, it's easy to adapt to your specific needs or integrate with existing codebases.

Repos:

Core (Python): https://github.com/OpenSymbolicAI/core-py

Docs: https://www.opensymbolic.ai/

Blog (Technical deep dives): https://www.opensymbolic.ai/blog
by pdonis | 2026-02-03 20:19:17+00:00
> in the Torrens system, whatever the government records say are final

First, it doesn't seem like that's always the case, based on another post upthread talking about a land ownership case that went to the high court because of an error in the government's records.

Second, since there is no single government for the entire world, any government trying to implement a Torrens system is still going to face the problem of events happening outside its jurisdiction that its records do not and cannot contain, which affect ownership of property in its jurisdiction. So there cannot be a "single source of truth" in the sense you appear to be using the term, even in the Torrens system.
by direwolf20 | 2026-02-03 20:19:27+00:00
I don't see how this relates to that.

Ironically enough though, could feudal currencies actually be better on a blockchain? Think shares in a business. Bitcoin is backed by nothing, but if businesses all trade on Ethereum–style L2s, you could lock in whatever you want. Think: I want 2 tonnes of lumber for my new house build so I will trade whatever for 20000 $HomeDepotLMBR and it entitles me to exactly that amount when I go into the store.
by Der_Einzige | 2026-02-03 20:19:37+00:00
I have literally the opposite experience and so does most of AI pilled twitter and the AI research community of top conferences (NeurIPS, ICLR, ICML, AAAI) Why does this FUD keep appearing on this site?

Edit: It's very true that the big 4 labs silently mess with their models and any action of that nature is extremely user hostile.
by jauws | 2026-02-03 20:19:43+00:00
I think there's interesting work to be built on this data beyond just generating and sorting slop. I didn't build this because I enjoy having people read bad fiction. I built it because existing benchmarks for creative writing are genuinely bad and often measure the wrong things. The goal isn't to ask users to read low-quality output for its own sake. It's to collect real reader-side signal for a category where automated evaluation has repeatedly failed.

More broadly, crowdsourced data where human inputs are fundamentally diverse lets us study problems that static benchmarks can't touch. The recent "Artificial Hivemind" paper (Jiang et al., NeurIPS 2025 Best Paper) showed that LLMs exhibit striking mode collapse on open-ended tasks, both within models and across model families, and that current reward models are poorly calibrated to diverse human preferences. Fiction at scale is exactly the kind of data you need to diagnose and measure this. You can see where models converge on the same tropes, whether "creative" behavior actually persists or collapses into the same patterns, and how novelty degrades over time. That signal matters well beyond fiction, including domains like scientific research where convergence versus originality really matters.
by marcosdumay | 2026-02-03 20:20:02+00:00
Most developed countries are peaking in costs to young people right now. The people entering workforce now are getting a huge bad surprise, but the cost of supporting older people will start to decrease very soon.

So, if you are looking for some future phase shift, you are searching for the wrong thing.

Also, most of the developing countries will be in that situation in ~20 years. Most underdeveloped ones will get there in an extra decade or two.
by ericd | 2026-02-03 20:20:04+00:00
Yeah, I don't know if it wins on cheaper, even with $2M fully reusable starship launches. Maybe rollout speed vs piecing together BD deals with a bunch of different infra providers? The expansion of the grid is going to be hamstrung until congress finally passes energy permitting reform, which they've tried and failed at repeatedly. But they could do non-interconnected microgrids in the desert like Redwood Materials has been trying.

Maybe there's a concentration in VA because there's a set of deals/procedures in place with infra providers there that make it easy to scale up, similar to how DE has well developed corporate infrastructure, so everyone incorporates there. But that stops when the area hits its limit in power provision (which seems to be happening right now). In which case, being able to do this yourself end to end by putting this stuff in space with your own power generation makes it the ultimate scale-up opportunity - no real limits on space or power availability, so once you get that method down, you can mass-scale and get great economies of scale. Maintenance isn't a thing, these will be disposable.

I think that's it, money's not the limiting factor if they can pitch this successfully, which I think they will. They want massive scale without the constraints you hit when doing it on earth. I think he's aiming for scale that we haven't seen in DCs on earth.
by soneil | 2026-02-03 20:20:31+00:00
This is the bit (sic) that drives me nuts.

RAM had binary sizing for perfectly practical reasons. Nothing else did (until SSDs inherited RAM's architecture).

We apply it to all the wrong things mostly because the first home computers had nothing but RAM, so binary sizing was the only explanation that was ever needed. And 50 years later we're sticking to that story.
by Aurornis | 2026-02-03 20:20:51+00:00
I experimented with the Q2 and Q4 quants. First impression is that it's amazing we can run this locally, but it's definitely not at Sonnet 4.5 level at all.

Even for my usual toy coding problems it would get simple things wrong and require some poking to get to it.

A few times it got stuck in thinking loops and I had to cancel prompts.

This was using the recommended settings from the unsloth repository. It's always possible that there are some bugs in early implementations that need to be fixed later, but so far I don't see any reason to believe this is actually a Sonnet 4.5 level model.
by PassingClouds | 2026-02-03 20:20:54+00:00
I have said for a long time that if housing was cheaper, that is a good start to getting other thing under control. It gives folks a target to hit for stability. Once a bit more stable, it frees up opportunities to address other issues.

I say this as a home owner, let the market crash, I dont care what my house is valued as it is an asset not an investment.
by dprice1 | 2026-02-03 20:21:02+00:00
I like this! I noticed that the weather for some Bay Area counties seem to be getting zeroed out for temperature.

https://safe-now.live/c/us/ca/county/san-mateo/
https://safe-now.live/c/us/ca/county/santa-cruz/

(both say:
Weather Now
32°F / 0°C - Sunny
)
by thanos_el | 2026-02-03 20:21:05+00:00
I built WordPress Boost to solve a problem I kept hitting: AI coding assistants (Claude, Cursor, etc.) write generic WordPress code because they can't see your project's structure.

WordPress Boost is an MCP server that gives AI agents visibility into:

- Registered hooks, post types, taxonomies
- Database schema and REST endpoints
- ACF field groups and WooCommerce config
- Security vulnerabilities (SQL injection, XSS, etc.)
- And 30+ other introspection tools

It also includes a security auditor that grades your site A-F and generates test data via Faker.

Setup is just:
composer require thanoseleftherakos/wordpress-boost --dev
php vendor/bin/wp-boost --init

Works with Claude Code, Cursor, Windsurf, PhpStorm, and any MCP-compatible tool.

GitHub: https://github.com/thanoseleftherakos/wordpress-boost

Would love feedback from anyone working with WordPress or MCP.
by pdonis | 2026-02-03 20:21:09+00:00
> at least in some places in the US that's actually just a log of some kinds of transactions

That's true--but as I pointed out just now in response to another post, since there is no single government having jurisdiction over the entire world, there is always the possibility of events happening outside a given jurisdiction that affect the ownership of property in that jurisdiction. No system of records in a jurisdiction can completely prevent that.
by nayuki | 2026-02-03 20:22:08+00:00
> setting weights and measures by local and trade tradition and it was a nightmare

Adding to your point, it is human nature to create industry- or context-specific units and refuse to play with others.

In the non-metric world, I see examples like: Paper publishing uses points (1/72 inch), metal machinists use thousands of an inch, woodworkers use feet and inches and binary fractions, land surveyors use decimal feet (unusual!), waist circumference is in inches, body height is in feet and inches, but you buy fabric by the yard, airplane altitudes are in hundreds to tens of thousands of feet instead of decimal miles. Crude oil is traded in barrels but gasoline is dispensed in gallons. Everyone thinks their usage of units and numbers is intuitive and optimal, and everyone refuses to change.

In the metric(ish) world, I still see many tensions. The micron is a common alternate name for the micrometre, yet why don't we have a millin or nanon or picon? The solution is to eliminate the micron. I've seen the angstrom (0.1 nm) in spectroscopy and in the discussion of CPU transistor sizes, yet it diverts attention away from the picometre. The bar (100 kPa) is popular in talking about things like tire pressure because it's nearly 1 atmosphere. The mmHg is a unit of pressure that sounds metric but is not; the correct unit is pascal. No one in astronomy uses mega/giga/tera/peta/etc.-metres; instead they use AU and parsec and (thousand, million, billion) light-years. Particle physics use eV/keV/MeV instead of some units around the picojoule.

Having a grab bag of units and domains that don't talk to each other is indeed the natural state of things. To put your foot down and say no, your industry does not get its own special snowflake unit, stop that nonsense and use the standardized unit - that takes real effort to achieve.
by robocat | 2026-02-03 20:22:16+00:00
New Zealand has much stricter filters for immigrants.

Tautologically: good immigrants are great and bad immigrants are terrible. I certainly know a few awful immigrants too.

30% of our population was born overseas. It seems to be working fine for those born here and for the immigrants.

Young New Zealanders emigrate, and existing immigrants get older so NZ has an ongoing need to have more immigrants.

People want to come here so we have the luxury of setting filters. I'm not sure what will happen when other countries start competing harder for the "better" immigrants.

Australia is similar but it has less trouble with losing its young people - it gains a lot of New Zealanders because it is a wealthier country with better weather (but bitier fauna)
by layer8 | 2026-02-03 20:22:16+00:00
From https://archive.org/details/byte-magazine-1977-02/page/n145/...:

“A byte was described as consisting of any number of parallel bits from one to six. Thus a byte was assumed to have a length appropriate for the occasion. Its first use was in the context of the input-output equipment of the 1950s, which handled six bits at a time.”
by rootusrootus | 2026-02-03 20:22:19+00:00
I don't love it, but I don't have many of the problems other people seem to have. And I've used everything from IRC in the 80s to Slack more recently. The only thing I can think of is that I don't run it on Windows, but rather a fairly new MacBook Pro M4. Maybe in this case it actually runs better on Mac, which is kind of ironic.
by nonameiguess | 2026-02-03 20:22:32+00:00
This was posted to Reddit's r/science five hours or so before the submission here, under roughly the same title but longer since Reddit allows longer titles. I'm sure they just saw it made r/all over there and figured copying it over more or less verbatim would achieve the same engagement as everyone plays with their favorite bugaboos about old people and maybe 3 people out of 100 wonder if the effect is consistent that young people are just generally less happy than older people regardless of the specific time at which you ask.
by 4gotunameagain | 2026-02-03 20:22:47+00:00
What happened was beyond reprehensible. If the winter of 2022 was not unusually warm and the gas stockpiles had emptied, not only would the entire Eurozone (350 million people) have plunged into a massive economic crisis, but people would literally die.

Convenience, and cheap gas, was definitely a good strategy. Up until the point where our ally, the USA, would try to get Ukraine to NATO, provoke Russia to invade, and then help the Ukrainians blow up the pipeline.

The world is moving away from the US and I really cannot wait. They have done much more damage globally than good.
by wizzwizz4 | 2026-02-03 20:22:47+00:00
Even authenticating to Teams is a herculean task. Microsoft's official APIs seem purpose-built to prevent people from writing proper Teams interfaces, and attempting to replicate their proprietary SSO flow is extremely painful. (In theory, you could hook into it by starting a fresh web browser at the appropriate login page, waiting for the appropriate redirects, and then harvesting the relevant cookies, but that's a really ugly solution, and it already represents a lot of invested work.)
by tigr | 2026-02-03 20:23:02+00:00
Location: Yerevan, Armenia

Remote: Yes

Willing to relocate: London, UK

Technologies: Python, Go, Node.js, PostgreSQL, Redis, MongoDB, ClickHouse, Kafka, RabbitMQ, Celery, AWS (S3, Lambda, RDS, EKS, ECS, Fargate), Kubernetes, Docker, Terraform, GitHub Actions, ArgoCD, Datadog, Prometheus, OpenTelemetry, payment systems, AML/fraud detection, high-throughput data pipelines, real-time services

Résumé/CV: https://kostandyan.xyz/files/cv-20260115.pdf

Email: t.kostandyan1@gmail.com

Backend engineer building high-scale, real-time and data-intensive systems across fintech, infrastructure and AI-driven tooling. Founding engineer in multiple startups, with hands-on experience designing payment and compliance systems (AML/fraud) and leading core backend initiatives. Recently worked on an AI-assisted SQL migration and transpilation platform for enterprise customers
by mothballed | 2026-02-03 20:23:16+00:00
SVB depositors were mildly interrupted, no doubt, but there's little reason not to exercise extreme moral hazard in banking. OPM will bail you out via FDIC. Theoretically that has a limit but in practice FDIC usually will bail out the full balances even over the nominal limit.

If I had an FDIC account I would basically want a bank that invests my money in the most wildly hazardous ways with the most reckless financial controls to give the max returns and flexibility, then let everyone else bail me out if it went south.
by randusername | 2026-02-03 20:23:29+00:00
The Zen of Teams is that Teams is so clunky it cannot be Slack.

Without threads, there is no breach of thread-etiquette.

When "channels" are so awkward, nobody uses them. Then there is no constant deluge of middle-age folks creating a Facebook out of work, needing to be reminded that the photos channel is for business-photos, not pictures of their kids.

When emoji support is limited, nobody has to police people pushing the boundaries of what emojis are appropriate.

The software is baffling. But I like it that way.
by spacedcowboy | 2026-02-03 20:23:38+00:00
Honestly, that just sounds like it does things in an unfamiliar (to you) way. That's the flip side of the coin "This means you've learned to work around its shortcomings".

There is no perfect IDE. They all have problems / are inadequate / get in the way. I absolutely loathe IntelliJ IDEA for example, and think Eclipse is needlessly complex (though I'd like their code-indentation/formatting UI to replace the one in Xcode).

Honestly, Xcode gets a lot of bad comments, but it works pretty well for me and the debugging tools are pretty much top-notch if you take the time to learn them.

I started a project on January 5th. Running sloc right now I see:

---------- Result ------------

Physical : 44454
Source : 31019
Comment : 7284
Single-line comment : 2622
Block comment : 4662
Mixed : 210
Empty block comment : 2
Empty : 6363
To Do : 0

Number of files read : 195

----------------------------

That's a lot of code in just under a month (and none of it from AI tools), I don't think the IDE is getting in my way.
by parsimo2010 | 2026-02-03 20:23:51+00:00
Many people don't remember, but in early 2020 just prior to COVID shutting the world down the US and Iran were near war- the US even assassinated one of Iran's important military commanders https://en.wikipedia.org/wiki/Assassination_of_Qasem_Soleima....

Most people worldwide don't remember, but Iran is most certainly aware that Trump was president when that happened too. Most US presidents tried to find some balance with Iran, but Trump seems to want to be an antagonist.
by aflag | 2026-02-03 20:24:10+00:00
I don't know if I want to create an ad-hoc list of permissions. What I would like would be something like take a snapshot of my current workspace in a VM. Run claude there and let it go wild. After the end of the session, kill the box. The only downside is potentially syncing the claude sessions/projects. But I don't think that'd be too difficult.
by palmotea | 2026-02-03 20:24:18+00:00
> And who do you think exactly contributed to the over financialization of everything? Every single thing, good or bad, is a direct result of the actions of the generation before.

Some elements of the generation before. It's is exceedingly unhelpful the blame an entire generation for the actions of a few. There were some elite people with a plan, many more who bought the propaganda they were served, and a lot who had nothing to do with any of it.

Also, it's worth noting (to help build empathy) that you and me likely have been suckered by propaganda for things that the next generation will curse us for, but we just think we're being sensible and informed.

The least you could do is blame an ideological faction of that generation (e.g. neoliberals), rather than blaming the whole generation itself. Among many advantages, that names the problem in a way that can solve it.
by soneil | 2026-02-03 20:24:19+00:00
It goes back way further than that. The first IBM harddrive was the IBM 350 for the IBM 305 RAMDAC. It was 5 million characters. Not bytes, bytes weren't "a thing" yet. 5,000,000 characters. The very first harddrive was base-10.

Here's my theory. In the beginning, everything was base10. Because humans.

Binary addressing made sense for RAM. Especially since it makes decoding address lines into chip selects (or slabs of core, or whatever) a piece of cake, having chips be a round number in binary made life easier for everyone.

Then early DOS systems (CP/M comes to mind particularly) mapped disk sectors to RAM regions, so to enable this shortcut, disk sectors became RAM-shaped. The 512-byte sector was born. File sizes can be written in bytes, but what actually matters is how many sectors they take up. So file sizing inherited this shortcut.

But these shortcuts never affected "real computers", only the hamstrung crap people were running at home.

So today we have multiple ecosystems. Some born out of real computers, some with a heavy DOS inheritance. Some of us were taught DOS's limitations as truth, and some of us weren't.
by colechristensen | 2026-02-03 20:24:31+00:00
>Almost every environmental regulation has come after it was already shown that there was some harm that needed to be mitigated.

Ok, strong example here: the long term efforts to stop forest fires caused build up of fuel that should have burned up in small fires which then instead burned up ecosystems which evolved for small forest fires and instead were destroyed in large ones.

That's a well intentioned environmental policy that had terrible effects.

Fuel efficiency programs with the goal of reducing emissions with exceptions for work vehicles killed small trucks and meant a ton of people who do approximately 0 work drive around enormous vehicles that were designed big to match the exception criteria.

That's another one.

Ethanol to replace gasoline is also an enormous negative consequence waste that started as an environmental program.

Things don't just work because you want them to and programs aren't automatically right because of what they intend to do.

Far too many people argue for things they don't understand at all because of the surface intention of them and treat discussion about them blasphemy. (I chose uncontroversial negative examples because I don't want to get sidetracked into arguments about my examples with zealots)
by mirekrusin | 2026-02-03 20:24:55+00:00
It takes download time + 1 minute to test speed yourself, you can try different quants, it's hard to write down a table because it depends on your system ie. ram clock etc. if you go out of gpu.

I guess it would make sense to have something like max context size/quants that fit fully on common configs with gpus, dual gpus, unified ram on mac etc.