‹ BackHN Continuity

Thread

Cf: The Agentic CLI for the Cloudflare API

171 points · 88 comments · macleos

  1. slowin · · focus · HN ↗
    I don't understand why this is written in Typescript. This is a great example of how agents can write code (I'm sure they wrote `cf`), yet having fundamental computer science knowledge is still critical. Do not force your users to manage the dependencies of your cli. Do write your cli in a compiled language. Understand the reason for those decisions and tell your agents to use the correct architecture.
    1. kelchm · · focus · HN ↗
      Are you really suggesting that the choice to use Typescript wasn't a deliberate one?

      IMO -- it makes total sense within the existing Cloudflare tooling ecosystem.

      1. slowin · · focus · HN ↗
        Whether it was deliberate or not, I do not think it's a good choice. When agents can write in any language, there's no reason to pick the wrong tool for the job. At this point Javascript/Typescript belongs only in the browser. It's the suboptimal choice for every other environment. Especially for a command line tool. Even if the back-end is written in Typescript (also not the best choice imho), the clients need not be in the same language.
        1. amluto · · focus · HN ↗
          Various agent tools (including current versions of codex-rs, which is otherwise a normal Rust program) make effective use of JavaScript/TypeScript for “code mode”. I actually think it’s an excellent choice for this use case. (I think that a less weird language with otherwise similar optimizers and tooling would be even better, but JS/TypeScript is what we have.)

          What would even be a good alternative? The language should have no ambient authority, be fully safe, run newly loaded code quickly, and be popular enough that current LLMs are good at it. I think the languages that fit the bill are JS/TypeScript and Lua.

          1. lelanthran · · focus · HN ↗
            > The language should have no ambient authority, be fully safe, run newly loaded code quickly, and be popular enough that current LLMs are good at it. I think the languages that fit the bill are JS/TypeScript and Lua.

            JS as a tech stack breaks your "fully safe" constraint (unless you are talking about running a CLI JS application without using npm...)

            1. amluto · · focus · HN ↗
              In this particular instance, I mean JS-the-language, not JS-the-ecosystem with browser and/or npm-style APIs.

              codex-rs's code-mode-runtime uses plain V8 and gives it limited capabilities. (It gives it a very strange set of capabilities, but the point is that a program can grant specified capabilities to a JS script that it hosts, and the JS script can use those capabilities and nothing else.)

              I suppose I should have added Lisp-like langauges to my list, although those don't have the kind of static type checking that TypeScript can offer.

Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.