Conversation
|
|
||
| ## What Is AGENTS.md? | ||
|
|
||
| `AGENTS.md` is a plain markdown file you commit to your repository that gives AI coding agents the context they need to work correctly in your project. Think of it as a README for agents — while `README.md` tells a new developer what the project is, `AGENTS.md` tells an AI assistant how to work in it correctly. |
There was a problem hiding this comment.
dang that is really good analogy!! I'll need to use that
|
|
||
| ## Why This Matters for the pharmaverse | ||
|
|
||
| ADaM derivations encode decades of CDISC regulatory expectations that don't appear anywhere in the R syntax. The fact that `ANL01FL` is an analysis flag with specific derivation logic, that `DTYPE = "LLOQ"` imputation records follow specific rules, or that the admiral programming strategy mandates `dplyr` verbs and discourages base R — none of this is inferable from the code alone. |
There was a problem hiding this comment.
| ADaM derivations encode decades of CDISC regulatory expectations that don't appear anywhere in the R syntax. The fact that `ANL01FL` is an analysis flag with specific derivation logic, that `DTYPE = "LLOQ"` imputation records follow specific rules, or that the admiral programming strategy mandates `dplyr` verbs and discourages base R — none of this is inferable from the code alone. | |
| ADaM derivations encode decades of CDISC regulatory expectations that don't appear anywhere in the R syntax. The fact that `ANL01FL` is an analysis flag with specific derivation logic, that `DTYPE = "LLOQ"` imputation records follow specific rules — none of this is inferable from the code alone. |
or that the admiral programming strategy mandates dplyr verbs and discourages base R — none of this is inferable from the code alone.
could we remove this part - I don't think we should highlight that and maybe remove it from our manifesto entirely. @manciniedoardo WDYT?
There was a problem hiding this comment.
ok to remove - we sometimes use base R anyway, no need to be so prescriptive.
bms63
left a comment
There was a problem hiding this comment.
This is super thorough!! wowsie - I'll need to have another read through again!!
@rossfarrugia, @aaehmann, @nicholas-masel, @orladoylenvs and others from council - we are actively discussing this is in admiral meetings and have a few resources here: pharmaverse/admiraldev#547 triggered from this slack discussion: https://pharmaverse.slack.com/archives/C02951M3MK3/p1773227847371619
This post gives a really great summation of what we are utilizing in admiral as well as what we have come up against in admiral. I see this is hitting one of the pharmaverse pillars (AI-based solutions and agents will play a critical role in future ways of working).
Is there a push to develop some guidelines/principles or any other discussions you all can share that are happening around use of AI in pharmaverse council - similar to say https://ropensci.org/blog/2026/02/26/ropensci-ai-policy/ ??
Also want to make sure this post is okay to put out there!!??!!
|
|
||
| ## Introduction | ||
|
|
||
| AI coding assistants are becoming a natural part of how clinical R programmers work — autocompleting functions, suggesting test cases, drafting derivations. But out of the box, these agents know nothing about ADaM conventions, CDISC standards, or how the pharmaverse ecosystem fits together. They don't know that flag variables take `"Y"` or `NA` — never `"N"`. They don't know that `{pharmaversesdtm}` is the canonical source of test SDTM data, or that `{xportr}` is waiting downstream to turn your dataset into a submission-ready XPT file. `AGENTS.md` is a simple, open standard that changes that — and the admiral ecosystem now has infrastructure to generate and maintain these files automatically across every package in the family. |
There was a problem hiding this comment.
Is it true about the "never "N""? Our examples have in {admiral} have loads of N's!!
|
|
||
| ## Why This Matters for the pharmaverse | ||
|
|
||
| ADaM derivations encode decades of CDISC regulatory expectations that don't appear anywhere in the R syntax. The fact that `ANL01FL` is an analysis flag with specific derivation logic, that `DTYPE = "LLOQ"` imputation records follow specific rules, or that the admiral programming strategy mandates `dplyr` verbs and discourages base R — none of this is inferable from the code alone. |
There was a problem hiding this comment.
minor: {admiral} is not always formatted inside curlies in the blog.
|
@adcascone and I were originally to write a joint blog about both the |
AGENTS.md, {admiral}, and the AI-Assisted ProgrammerAGENTS.md, {admiral}, and the AI-Assisted Programmer
@mdubel @Coutuan3s as council reps for the "Future Focus" pillar I wanted to tag you both here to comment. |
…sisted-programmer
|
❌ Preview removed. This PR has been closed and the preview website has been removed. |
amazing!! @jeffreyad, @manciniedoardo, @aaehmann, @ashley-tarasiewicz previews of the blog are now available in the PR |
|
@jeffreyad I am going to merge and publish soon, but could we do a seperate update for the image and make this transparent? btw love the image
|
|
@manciniedoardo @bms63 and others. Note that this exact topic was also discussed recently during Phuse US, especially in sessions: The conclusions were clear:
This is indeed our close interest as a Pharmaverse Future Focus pillar, thus expect guidance to come. Note that we are working right now on the automated governance workflow for all the packages in the Pharmaverse. It was suppose to have all the standard metrics and checks, related to maintenance, code quality, tests. However, after Phuse discussions and posts like this, I see that 'being AI ready' is also a crucial part to include in the package review report. |

Thank you for your Pull Request! We have developed this task checklist to help with the final steps of the process. Completing the below tasks helps to ensure our reviewers can maximize their time on your blog post.
Please check off each taskbox as an acknowledgment that you completed the task or check off that it is not relevant to your Pull Request. This checklist is part of the Github Action workflows and the Pull Request will not be merged into the
mainbranch until you have checked off each task."posts/date_with_short_tile"and the blog post file and any other artifacts have informative but succinct names.CICD.Rline by line to first check the spelling in your post and then to make sure your code is compatible with our code-style. Address any incongruences by following the instructions in the file!tag(s)or categories from the current list:c("Metadata", "SDTM", "ADaM", "TLG", "Shiny", "Python", "Community", "Conferences", "Submissions", "Technical", "DEI")for your blog post. If you cannot find anything that fits your blog post, propose a new tag to the maintainers! Note: if you use a tag not from this list, the "Check Post Tags" CICD pipeline will error. We occasionally tidy up alltagsfor consistency.descriptionfield at the top of the markdown document.This blog contains opinions that are of the authors alone and do not necessarily reflect the strategy of their respective organizations.)