Code carries fingerprints. Variable naming conventions, function granularity, whitespace habits, error-handling discipline. Combine them and you get something close to a signature. The field of code authorship attribution exists precisely because these patterns are identifiable. Extract syntax tree structures and you can match anonymous code to its writer with surprising accuracy.
But here is the deeper question: is authorship really about style?
Shakespeare's identity remains disputed. The text does not change regardless of who wrote it. What changes is the frame of interpretation. "A play by Shakespeare" and "a play by Bacon" generate different readings of the same words. Authorship does not reside in style or content. It resides in the attribution structure — the binding between a text and a person.
Michel Foucault arrived at this conclusion in 1969. His concept of author function holds that the author is not the producer of a text but the organizing principle of how a text is read. Authorship is a relation, not a property.
Git as an Attribution Machine
Bring this framework into the domain of code and something interesting emerges. Literature spent centuries constructing the institution of authorship. Software implemented it as infrastructure. The Git commit log records who wrote which line, when, and why. Author function, institutionalized at the protocol level.
What literature built through cultural accumulation, code built through version control.
The Declining Status of Content
In literature, content was never a sufficient condition for authorship. The same text acquires different value depending on who wrote it. But content was at least a necessary condition. No work, no attribution.
In the age of AI-generated code, content is not even necessary. Give the same specification to an LLM and it produces equivalent code every time. The existence of code itself becomes a commodity.
Why does this hit code harder than literature? Convergence. Ask ten people to write about loneliness and you get ten different novels. Ask ten people to write a sort function and their outputs look remarkably similar. Code is inherently convergent in its outputs. When LLMs compress the diversity of process as well, the foothold for authorship disappears entirely.
Literature retains output diversity even when the process is mechanized. Code does not. The problem is sharpest here.
Three Layers Split Apart
Traditional coding bundled three layers into a single engineer. The conception layer: deciding what to build. The implementation layer: writing the code. The judgment layer: reviewing and approving the result.
Engineers posting about their work on social media are performing attribution across all three layers. "I've been fighting this bug for three hours." "I finally found the right architecture." These are not displays of output. They are claims of process ownership.
LLMs fracture this unity. Conception stays with the human. Implementation moves to the LLM. Judgment returns to the human. The middle drops out. Authorship migrates from skill to judgment.
The old structure: author ⇄ work. Direct production. The new structure: ideator → agent → work. Mediated generation.
A human who typed nothing holds attribution. An LLM that generated every character holds none.
Why Co-authorship Fails
Could we call AI a co-author? No. Co-authorship requires difference between authors. Human A and Human B can co-author a paper because they bring distinct personalities, experiences, and competencies. The difference is what makes the collaboration meaningful.
AI lacks this individuality. Claude, GPT, Gemini — different names, same category. They are variations of a technology, not individuals with life histories. No matter how large the contribution, without individuality there is no co-authorship. The volume of contribution and the qualification for authorship occupy separate axes.
The Third Category: Agent
AI is neither tool nor co-author. A tool — scissors, a hammer — does not determine the form of the product. A co-author brings a unique personality. AI does neither and both: it determines form without possessing individuality.
The industry's adoption of "AI agent" encodes an attribution structure, perhaps without realizing it. In law, an agent acts on behalf of a principal. The consequences of the agent's actions belong to the principal, not the agent. Apply this to code: the ideator is the principal. The AI agent executes. Attribution flows to the ideator.
This is not a metaphor. It is the logic already embedded in how the technology is named and deployed.
The Law Has Not Caught Up — Two Cases
This conceptual structure has already surfaced as legal conflict.
Thaler v. Perlmutter. Computer scientist Stephen Thaler built an AI system called the Creativity Machine, which autonomously generated an image titled "A Recent Entrance to Paradise." Thaler filed for copyright registration, listing the AI as the author and himself as the owner. The U.S. Copyright Office denied the application. The district court upheld the denial. The D.C. Circuit affirmed unanimously. In March 2026, the Supreme Court declined to hear the appeal. Human authorship is now a settled requirement for U.S. copyright protection.
The critical limitation: the court said nothing about cases where a human uses AI as a tool. Thaler had explicitly stated that no human was involved in the creative process. The line between AI-assisted and AI-generated work remains undrawn.
The chardet v7.0.0 dispute. In March 2026, Dan Blanchard, long-time maintainer of the Python character-encoding library chardet, used Anthropic's Claude Code to rewrite the entire codebase. He changed the license from LGPL — a copyleft license requiring derivative works to keep the same terms — to the permissive MIT license. Mark Pilgrim, the original author, protested. His argument: Blanchard had been immersed in the LGPL-licensed code for over a decade. An AI-mediated rewrite by someone with that level of exposure is not a clean-room implementation.
The two cases create a paradox when placed side by side. If AI-generated code cannot be copyrighted (following the Thaler logic), then the MIT license Blanchard attached may have no legal basis. You cannot license what you do not own. But if the rewrite is deemed a derivative of the original LGPL code, the license change itself is invalid. Either way, the human who used AI to rewrite the code cannot secure stable attribution.
Where Does the Ideator Stand?
The larger picture: copyright law was designed on the premise that humans write things and humans own what they write. The AI era introduces an unprecedented category — things that humans conceived but did not write. The ideator as a legal subject has no established home in existing frameworks.
Git commit logs function not as legal proof of authorship but as records of social attribution. Until the law catches up, the authorship of the ideator rests on this social consensus. It is unstable. It is also the reality we inhabit.
Authorship is not dead. It has moved. From author to ideator. From the act of writing to the act of conceiving and judging. That transition is happening now, and it is happening most visibly in code.