On the files you touch, in TypeScript, Python, and Go.
Delivered as a draft PR you review before anything merges.
Available in
OUTPUT ●
Same code. Five seconds later.
async function cleanupExpired(sessions) {
const now = Date.now();
await Promise.all(
sessions.map(async (s) => {
if (s.expiresAt < now)
await db.delete(s.id);
})
);
}/** * Delete every session past its expiry. * @param {Session[]} sessions active set * @returns {Promise<void>} resolves once * all stale rows are removed */ async function cleanupExpired(sessions) { const now = Date.now(); // delete in parallel; await all await Promise.all(/* … */); }
PRODUCT ●
TypeScript, Python, and Go today. No per-language plugin to install.
Reads the comments already in your codebase and writes in the same convention.
Documents the files changed in your PR — not a sweeping rewrite of the repo.
OUTPUT TYPES ●
services/session.ts:117
Summary, params, return, and raises — in the repo's existing convention.
services/session.ts:121
Why the retry is idempotent. What the magic number means. The non-obvious bits.
services/session.ts:117
Inferred from annotations and call sites. Type-aware, not guessed.
— everywhere
Comments only. Non-comment bytes verified unchanged.
CONVENTION ●
TSDocmatchedPEP 257matchedgodocmatchedFOR ●
Run on the modules new engineers touch first. Make code legible to someone who didn't write it.
The non-obvious logic gets a why, while the obvious lines stay quiet.
Generate docs to the standard a review or open-sourcing pass needs.
What hand-documenting the files you touch costs, versus one pass.
By hand
CodeComments
Copilot writes comments while you type. CodeComments writes them after — same install as the review.
The same plan as AI code review. No second subscription.
See full pricingComments are AI-generated. Review before merging.
Install in two minutes. Free for public repos. Cancel anytime on private.
We run CodeComments on our own repo.