10 comments

  • bob1029 15 hours ago
    I'm not sure when I would use something like this. My VS copilot already writes one-off scripts that use Roslyn to analyze code. I don't even have to prompt it to do this with gpt5.5+

    C#/.NET feels unreasonably effective as a target for LLMs. The reflection and compiler services are not found anywhere else and have profound effects that HN still seems to be taking massive naps on.

  • spicyusername 19 hours ago
    Love to see C# love. It's a great language. Super underrated in my opinion.

    Unions coming in .NET 11 / C# 15 are going to be great.

    • el_benhameen 17 hours ago
      Very excited to see union types and to see C# on here. C# can feel like a bit of a scarlet letter in the bay.
  • JFuzz 19 hours ago
    Hey man, just wanted to say thanks! I pulled this down and adapted the skill for Unity development, keeping Graphify C# as an external analysis tool. My adapted skill isn’t publicly available yet, and I'm going to add it into my standard Unity Package development workflow to see if I can find some additional value in how the CLI and structured JSON make semantic information accessible to coding agents. I think this will help (maybe not on a full Unity game) but if you'r building multiple Unity Packages or have existing Unity Packages. Appreciate you sharing this!
    • zachsaw 11 hours ago
      whoa very nice! If possible, keep us updated. Feel free to contribute your unity skills to my repo as well.
  • exceptione 13 hours ago
    The tool recommends you to use this skill <https://github.com/zachsaw/graphify-csharp/blob/main/.agents...>, but I wonder if this is the right approach if one just want to use this as a consumer in a .net project. It seems very wordy, but wording like these

      "Read the relevant design documents under docs/ before changing architecture."
    
    makes me think that developing 'graphify the tool' and using 'graphify as a tool' are mixed up in the same document? How does an LLM keep track of both this gigantic skill and the user development problem at the same time?
    • zachsaw 11 hours ago
      Very good point! the graphify the tool and using graphify AS A tool have definitely beed mixed up! I'll fix this up. Thanks again and appreciate you looking into it!
      • exceptione 10 hours ago
        Great, looking forward to it!
    • thiagoc77 8 hours ago
      [flagged]
  • Merad 18 hours ago
    Interesting! Have you tried it on any large code bases? I have to wonder if json is going do become unwieldy at the scale of millions of LOC - a SQLite db might be a better choice.
    • zachsaw 15 hours ago
      yeah on my repo the json is over 600mb
  • yodon 21 hours ago
    I don't understand why Microsoft and JetBrains aren't shipping versions of this. It seems like exactly what Roslyn was designed for
    • zachsaw 21 hours ago
      Exactly! I'd be more than happy to hand it over to Microsoft to continue maintaining it just to be clear. But MIT licensing it, hopefully the community will help keep it up to date with future C# versions too.
    • CatsOwlsCatsOwl 19 hours ago
      (Microsoft) GitHub Copilot already builds a semantic index of your solution in a cloud cache, which is used to give higher code intelligence than what you can get from Claude Code alone or LLM interfaces which don't have native support for the Roslyn API like GitHub Copilot does.

      GitHub Copilot's semantic index can work for any SaaS repo provider (GitLab, Bitbucket, etc.) or any local repos but this requires you to opt into the feature. Repos hosted in GitHub and Azure DevOps do NOT require opting into it since Microsoft already has your code.

    • jayd16 20 hours ago
      JetBrains provides an MCP server such that agents can query the project index for things like find usages. What's different about this?
      • gregoryl 20 hours ago
        I'm hoping Rider get some support for switching between worktrees efficiently - until then, it becomes a tool only the primary / interactive agent sessions can access.
      • zachsaw 20 hours ago
        lol I actually didn't know that. This is MIT licensed though.

        EDIT: I think the differentiation is that this isn't MCP based. Dumping a portable json file allows much more flexibility than just having to run Rider IDE in the background with the solution loaded and indexed. e.g. the graph works with jq, CI (gates), arbitrary agents without MCP support, non MCP tools, bulk questions etc.

  • poilcn 18 hours ago
    Interesting, thanks. Seeing agents querying compiled code using reflection to find references looks painful and inefficient. Made me want to help little buddy somehow, but had no idea how
  • coverband 16 hours ago
    Is this compatible with Graphify-Labs/graphify, w/r/t existing output formats?
    • zachsaw 15 hours ago
      yes it is compatible with graphify - the json can be used directly by graphify.
  • quietraster 14 hours ago
    compiler accurate find usages is exactly the context coding agents keep missing. how heavy is the roslyn integration at runtime, does it index on save or on demand
    • zachsaw 11 hours ago
      It updates based on an interval that you can set as well as on demand. When file changes the file system watcher holds the events in memory until indexing is requested (interval/on-demand).
  • creatorofuniv 18 hours ago
    [dead]