Search
1000 results for “cli_ar”
-
In case you are in a mood for some #flatpak applications building with #cakebuild, you are in luck. I just published Cake.Flatpak with support for flatpak-builder cli. #cakecontrib #cakeaddin
-
https://pluralistic.net/2024/12/20/clinical-trial-by-ordeal/
Realistically, few people are going to read a 900-page group work of neofeudalist fanfic shit out by the most esoteric Fedsoc weirdos the world has ever seen.
But one person who did read Project 2025 was the leftist historian Rick Perlstein, who was the first person to really dig into what a fucking messthat thing is:
https://pluralistic.net/2024/07/14/fracture-lines/#disassembly-manual
Perlstein's excellent analysis doesn't claim that Project 2025's authors aren't sincere in their intentions to wreak great harm upon the nation and its people;
rather, his point is that Project 2025 is filled with contradictory, mutually exclusive proposals written by people who fundamentally disagree with one another,
and who each have enough power within the Trump coalition that all of their proposals have to be included in a document like this:
https://prospect.org/politics/2024-07-10-project-2025-republican-presidencies-tradition/
Project 2025 isn't just a guide to the masturbatory fantasies of the worst people in American politics
– far more importantly, it is a detailed map of the fracture lines in the GOP coalition, the places where it is liable to split and shatter.
🔥This is an important point if you want to do more about Trumpism than run around feeling miserable and scared.
If you want to fight, Project 2025 is a guide to the weak spots where an attack will do the most damage.
Perlstein's insight continues to be borne out as the Trump regime makes ready to take power.
In a new story for KFF News, Stephanie Armour and Julie Rovner describe the irreconcilable differences among Trump's picks for the country's top public health authorities:
https://kffhealthnews.org/news/article/trump-rfk-kennedy-health-hhs-fda-cdc-vaccines-covid-weldon/
The brain-worm-infected-elephant in the room is, of course, RFK Jr, who has been announced as Trump's head of Health and Human Services.
RFK Jr is a notorious antivaxer, chairman of Children’s Health Defense, a notorious anti-vaccine group.
Kennedy's view is shared by Trump's chosen CDC boss, Dave Weldon, a physician who has repeated the dangerous lie that vaccinations cause autism.
Mehmet "Dr Oz" Oz, the TV "physician" Trump wants to put in charge of Medicare/Medicaid, calls vaccines "oversold" and advocates for treating covid with hydroxychloroquine, another thoroughly debunked hoax:
https://www.usatoday.com/story/news/health/2024/12/17/hydroxychloroquine-study-covid-19-retracted-trump/77051671007/
However, other top Trump public health picks emphatically support vaccines.
#Marty #Makary is Trump's choice for FDA commissioner;
he's a Johns Hopkins trained surgeon who says vaccines "save lives" (but he peddles the lethal, unscientific hoax that childhood vaccines should be "spread out").
#Jay #Bhattacharya, the economist/MD whom Trump wants to put in charge of the NIH, supports vaccines
(he is also one of the country's leading proponents of the eugenicist idea of accepting the mass death of elderly, sick and disabled people rather than imposing quarantines during epidemics).
Then there's #Janette #Nesheiwat, whom Trump has asked to serve as the nation's surgeon general; she calls vaccines "a gift from God."Like "Bidenism," Trumpism is a fragile coalition of people who thoroughly and irreconcilably disagree with one another.
During the Biden administration, this resulted in self-inflicted injuries like appointing the brilliant trustbuster Lina Khan to run the FTC,
but also appointing the pro-monopoly corporate lawyer Jacqueline Scott Corley to a lifetime seat as a federal judge,
from which perch she ruled against Khan's no-brainer suit to block the Microsoft-Activision merger:
https://www.thebignewsletter.com/p/judge-rules-for-microsoft-mergers
The Trump coalition is even broader than the Biden coalition.
That's how he won the 2024 election.
But that also means that Trumpism is more fractious and off-balance, and hence will be easier to disrupt,
because it is riven by people in senior positions who hate one another and are actively working for each others' political demise. -
https://pluralistic.net/2024/12/20/clinical-trial-by-ordeal/
Realistically, few people are going to read a 900-page group work of neofeudalist fanfic shit out by the most esoteric Fedsoc weirdos the world has ever seen.
But one person who did read Project 2025 was the leftist historian Rick Perlstein, who was the first person to really dig into what a fucking messthat thing is:
https://pluralistic.net/2024/07/14/fracture-lines/#disassembly-manual
Perlstein's excellent analysis doesn't claim that Project 2025's authors aren't sincere in their intentions to wreak great harm upon the nation and its people;
rather, his point is that Project 2025 is filled with contradictory, mutually exclusive proposals written by people who fundamentally disagree with one another,
and who each have enough power within the Trump coalition that all of their proposals have to be included in a document like this:
https://prospect.org/politics/2024-07-10-project-2025-republican-presidencies-tradition/
Project 2025 isn't just a guide to the masturbatory fantasies of the worst people in American politics
– far more importantly, it is a detailed map of the fracture lines in the GOP coalition, the places where it is liable to split and shatter.
🔥This is an important point if you want to do more about Trumpism than run around feeling miserable and scared.
If you want to fight, Project 2025 is a guide to the weak spots where an attack will do the most damage.
Perlstein's insight continues to be borne out as the Trump regime makes ready to take power.
In a new story for KFF News, Stephanie Armour and Julie Rovner describe the irreconcilable differences among Trump's picks for the country's top public health authorities:
https://kffhealthnews.org/news/article/trump-rfk-kennedy-health-hhs-fda-cdc-vaccines-covid-weldon/
The brain-worm-infected-elephant in the room is, of course, RFK Jr, who has been announced as Trump's head of Health and Human Services.
RFK Jr is a notorious antivaxer, chairman of Children’s Health Defense, a notorious anti-vaccine group.
Kennedy's view is shared by Trump's chosen CDC boss, Dave Weldon, a physician who has repeated the dangerous lie that vaccinations cause autism.
Mehmet "Dr Oz" Oz, the TV "physician" Trump wants to put in charge of Medicare/Medicaid, calls vaccines "oversold" and advocates for treating covid with hydroxychloroquine, another thoroughly debunked hoax:
https://www.usatoday.com/story/news/health/2024/12/17/hydroxychloroquine-study-covid-19-retracted-trump/77051671007/
However, other top Trump public health picks emphatically support vaccines.
#Marty #Makary is Trump's choice for FDA commissioner;
he's a Johns Hopkins trained surgeon who says vaccines "save lives" (but he peddles the lethal, unscientific hoax that childhood vaccines should be "spread out").
#Jay #Bhattacharya, the economist/MD whom Trump wants to put in charge of the NIH, supports vaccines
(he is also one of the country's leading proponents of the eugenicist idea of accepting the mass death of elderly, sick and disabled people rather than imposing quarantines during epidemics).
Then there's #Janette #Nesheiwat, whom Trump has asked to serve as the nation's surgeon general; she calls vaccines "a gift from God."Like "Bidenism," Trumpism is a fragile coalition of people who thoroughly and irreconcilably disagree with one another.
During the Biden administration, this resulted in self-inflicted injuries like appointing the brilliant trustbuster Lina Khan to run the FTC,
but also appointing the pro-monopoly corporate lawyer Jacqueline Scott Corley to a lifetime seat as a federal judge,
from which perch she ruled against Khan's no-brainer suit to block the Microsoft-Activision merger:
https://www.thebignewsletter.com/p/judge-rules-for-microsoft-mergers
The Trump coalition is even broader than the Biden coalition.
That's how he won the 2024 election.
But that also means that Trumpism is more fractious and off-balance, and hence will be easier to disrupt,
because it is riven by people in senior positions who hate one another and are actively working for each others' political demise. -
https://pluralistic.net/2024/12/20/clinical-trial-by-ordeal/
Realistically, few people are going to read a 900-page group work of neofeudalist fanfic shit out by the most esoteric Fedsoc weirdos the world has ever seen.
But one person who did read Project 2025 was the leftist historian Rick Perlstein, who was the first person to really dig into what a fucking messthat thing is:
https://pluralistic.net/2024/07/14/fracture-lines/#disassembly-manual
Perlstein's excellent analysis doesn't claim that Project 2025's authors aren't sincere in their intentions to wreak great harm upon the nation and its people;
rather, his point is that Project 2025 is filled with contradictory, mutually exclusive proposals written by people who fundamentally disagree with one another,
and who each have enough power within the Trump coalition that all of their proposals have to be included in a document like this:
https://prospect.org/politics/2024-07-10-project-2025-republican-presidencies-tradition/
Project 2025 isn't just a guide to the masturbatory fantasies of the worst people in American politics
– far more importantly, it is a detailed map of the fracture lines in the GOP coalition, the places where it is liable to split and shatter.
🔥This is an important point if you want to do more about Trumpism than run around feeling miserable and scared.
If you want to fight, Project 2025 is a guide to the weak spots where an attack will do the most damage.
Perlstein's insight continues to be borne out as the Trump regime makes ready to take power.
In a new story for KFF News, Stephanie Armour and Julie Rovner describe the irreconcilable differences among Trump's picks for the country's top public health authorities:
https://kffhealthnews.org/news/article/trump-rfk-kennedy-health-hhs-fda-cdc-vaccines-covid-weldon/
The brain-worm-infected-elephant in the room is, of course, RFK Jr, who has been announced as Trump's head of Health and Human Services.
RFK Jr is a notorious antivaxer, chairman of Children’s Health Defense, a notorious anti-vaccine group.
Kennedy's view is shared by Trump's chosen CDC boss, Dave Weldon, a physician who has repeated the dangerous lie that vaccinations cause autism.
Mehmet "Dr Oz" Oz, the TV "physician" Trump wants to put in charge of Medicare/Medicaid, calls vaccines "oversold" and advocates for treating covid with hydroxychloroquine, another thoroughly debunked hoax:
https://www.usatoday.com/story/news/health/2024/12/17/hydroxychloroquine-study-covid-19-retracted-trump/77051671007/
However, other top Trump public health picks emphatically support vaccines.
#Marty #Makary is Trump's choice for FDA commissioner;
he's a Johns Hopkins trained surgeon who says vaccines "save lives" (but he peddles the lethal, unscientific hoax that childhood vaccines should be "spread out").
#Jay #Bhattacharya, the economist/MD whom Trump wants to put in charge of the NIH, supports vaccines
(he is also one of the country's leading proponents of the eugenicist idea of accepting the mass death of elderly, sick and disabled people rather than imposing quarantines during epidemics).
Then there's #Janette #Nesheiwat, whom Trump has asked to serve as the nation's surgeon general; she calls vaccines "a gift from God."Like "Bidenism," Trumpism is a fragile coalition of people who thoroughly and irreconcilably disagree with one another.
During the Biden administration, this resulted in self-inflicted injuries like appointing the brilliant trustbuster Lina Khan to run the FTC,
but also appointing the pro-monopoly corporate lawyer Jacqueline Scott Corley to a lifetime seat as a federal judge,
from which perch she ruled against Khan's no-brainer suit to block the Microsoft-Activision merger:
https://www.thebignewsletter.com/p/judge-rules-for-microsoft-mergers
The Trump coalition is even broader than the Biden coalition.
That's how he won the 2024 election.
But that also means that Trumpism is more fractious and off-balance, and hence will be easier to disrupt,
because it is riven by people in senior positions who hate one another and are actively working for each others' political demise. -
https://pluralistic.net/2024/12/20/clinical-trial-by-ordeal/
Realistically, few people are going to read a 900-page group work of neofeudalist fanfic shit out by the most esoteric Fedsoc weirdos the world has ever seen.
But one person who did read Project 2025 was the leftist historian Rick Perlstein, who was the first person to really dig into what a fucking messthat thing is:
https://pluralistic.net/2024/07/14/fracture-lines/#disassembly-manual
Perlstein's excellent analysis doesn't claim that Project 2025's authors aren't sincere in their intentions to wreak great harm upon the nation and its people;
rather, his point is that Project 2025 is filled with contradictory, mutually exclusive proposals written by people who fundamentally disagree with one another,
and who each have enough power within the Trump coalition that all of their proposals have to be included in a document like this:
https://prospect.org/politics/2024-07-10-project-2025-republican-presidencies-tradition/
Project 2025 isn't just a guide to the masturbatory fantasies of the worst people in American politics
– far more importantly, it is a detailed map of the fracture lines in the GOP coalition, the places where it is liable to split and shatter.
🔥This is an important point if you want to do more about Trumpism than run around feeling miserable and scared.
If you want to fight, Project 2025 is a guide to the weak spots where an attack will do the most damage.
Perlstein's insight continues to be borne out as the Trump regime makes ready to take power.
In a new story for KFF News, Stephanie Armour and Julie Rovner describe the irreconcilable differences among Trump's picks for the country's top public health authorities:
https://kffhealthnews.org/news/article/trump-rfk-kennedy-health-hhs-fda-cdc-vaccines-covid-weldon/
The brain-worm-infected-elephant in the room is, of course, RFK Jr, who has been announced as Trump's head of Health and Human Services.
RFK Jr is a notorious antivaxer, chairman of Children’s Health Defense, a notorious anti-vaccine group.
Kennedy's view is shared by Trump's chosen CDC boss, Dave Weldon, a physician who has repeated the dangerous lie that vaccinations cause autism.
Mehmet "Dr Oz" Oz, the TV "physician" Trump wants to put in charge of Medicare/Medicaid, calls vaccines "oversold" and advocates for treating covid with hydroxychloroquine, another thoroughly debunked hoax:
https://www.usatoday.com/story/news/health/2024/12/17/hydroxychloroquine-study-covid-19-retracted-trump/77051671007/
However, other top Trump public health picks emphatically support vaccines.
#Marty #Makary is Trump's choice for FDA commissioner;
he's a Johns Hopkins trained surgeon who says vaccines "save lives" (but he peddles the lethal, unscientific hoax that childhood vaccines should be "spread out").
#Jay #Bhattacharya, the economist/MD whom Trump wants to put in charge of the NIH, supports vaccines
(he is also one of the country's leading proponents of the eugenicist idea of accepting the mass death of elderly, sick and disabled people rather than imposing quarantines during epidemics).
Then there's #Janette #Nesheiwat, whom Trump has asked to serve as the nation's surgeon general; she calls vaccines "a gift from God."Like "Bidenism," Trumpism is a fragile coalition of people who thoroughly and irreconcilably disagree with one another.
During the Biden administration, this resulted in self-inflicted injuries like appointing the brilliant trustbuster Lina Khan to run the FTC,
but also appointing the pro-monopoly corporate lawyer Jacqueline Scott Corley to a lifetime seat as a federal judge,
from which perch she ruled against Khan's no-brainer suit to block the Microsoft-Activision merger:
https://www.thebignewsletter.com/p/judge-rules-for-microsoft-mergers
The Trump coalition is even broader than the Biden coalition.
That's how he won the 2024 election.
But that also means that Trumpism is more fractious and off-balance, and hence will be easier to disrupt,
because it is riven by people in senior positions who hate one another and are actively working for each others' political demise. -
When two Hetzner servers died at the same time
On May 12, 2026, two of my Arch Linux + LUKS servers at Hetzner became unreachable at the same moment. Both had been running for 4+ months without issue. Both had received the same
pacman -Syyuthe day before, but had stayed on the old kernel until the morning the websites stopped responding. I rebooted — SSH never came back.nmap -Pn -p 22showedfilteredfrom anywhere. No ping. No banner. The Hetzner Robot panel insisted the hardware was fine.Several hours went into hypotheses that turned out to be wrong:
- The
encryptsshinitcpio hook referencing a/usr/lib/initcpio/udev/11-dm-initramfs.rulesfile that no longer exists. Real bug, no boot impact — the initramfs rebuilds anyway. PermitRootLogin noinsshd_config. Real misconfiguration, fixed it, didn’t help. A refusing sshd showsclosed, notfiltered.- Predictable interface-naming drift after the systemd 260 upgrade. Patched the
.networkconfig to match by MAC. Useful hardening; not the cause. - Stale GRUB stage1 +
core.imgin the MBR. Arch never re-runsgrub-installafter agrubpackage upgrade. Refreshed it. Still filtered. - Kernel 7.0.5 regression. Downgraded to 6.18.3, the kernel that had run for 4 months. Still filtered. So the kernel itself wasn’t it either.
The clue was in the persistent journal: a single recorded boot from December 31 to May 12 10:13 UTC, and absolutely nothing after. Every reboot since the upgrade was failing before
systemd-journaldcould flush to disk — so the failure had to be in the initramfs, before the root filesystem was even mounted.What it almost certainly was
Hetzner Dedicated servers configure the initramfs network with
ip=dhcpon the kernel command line. That depends on Hetzner’s DHCP server replying to whatever request format the current kernel sends. Somewhere between kernel 6.18 / iproute2 6.18 and kernel 7.0 / iproute2 7.0, the request format changed enough that Hetzner’s DHCP stopped responding. Effects:- Old kernel at runtime kept the interface already configured (Phase A — 32 hours of healthy operation after the package upgrade).
- New kernel cold-boots, hits DHCP, never gets an IP, dropbear cannot listen, port 22 stays
filtered.
Hetzner’s own documentation has been quietly moving away from
ip=dhcptoward static IPv4 in the kernel command line. The fix is exactly that:GRUB_CMDLINE_LINUX="cryptdevice=/dev/md1:cryptroot ip=A.B.C.D::GATEWAY:255.255.255.255:hostname:eth0:none"One line in
/etc/default/grub,grub-mkconfig, reboot. No more dependency on Hetzner’s DHCP responding to whatever your current kernel sends.Why it matters for anyone running this stack
If you run Arch on Hetzner Dedicated with full-disk encryption and remote unlock via dropbear, the
ip=dhcpshipped byinstallimageis a latent bug. It can keep working for years and then break overnight, on every machine you have, after a routinepacman -Syyu. The static-IP version is what Hetzner now recommends and removes the entire dependency.Tooling
While debugging, I turned the whole rescue / chroot / diagnose / fix workflow into a Python CLI (
hal) — includinghal fix static-ip, which derives the static cmdline directly from your existingsystemd-networkd.networkfile:→ github.com/kevinveenbirkenbach/hetzner-arch-luks
Single command, idempotent, reversible (the original
#ArchLinux #bootFailure #debugging #DevOps #DHCP #Dropbear #fullDiskEncryption #GRUB #Hetzner #initramfs #kernelUpgrade #Linux #LUKS #mkinitcpio #pacman #postmortem #PythonCLI #serverOutage #sysadmin #systemdNetworkd/etc/default/grubis backed up to.hal-backup). If you’re on this stack, switch to static IP before the next kernel upgrade catches you. - The
-
When two Hetzner servers died at the same time
On May 12, 2026, two of my Arch Linux + LUKS servers at Hetzner became unreachable at the same moment. Both had been running for 4+ months without issue. Both had received the same
pacman -Syyuthe day before, but had stayed on the old kernel until the morning the websites stopped responding. I rebooted — SSH never came back.nmap -Pn -p 22showedfilteredfrom anywhere. No ping. No banner. The Hetzner Robot panel insisted the hardware was fine.Several hours went into hypotheses that turned out to be wrong:
- The
encryptsshinitcpio hook referencing a/usr/lib/initcpio/udev/11-dm-initramfs.rulesfile that no longer exists. Real bug, no boot impact — the initramfs rebuilds anyway. PermitRootLogin noinsshd_config. Real misconfiguration, fixed it, didn’t help. A refusing sshd showsclosed, notfiltered.- Predictable interface-naming drift after the systemd 260 upgrade. Patched the
.networkconfig to match by MAC. Useful hardening; not the cause. - Stale GRUB stage1 +
core.imgin the MBR. Arch never re-runsgrub-installafter agrubpackage upgrade. Refreshed it. Still filtered. - Kernel 7.0.5 regression. Downgraded to 6.18.3, the kernel that had run for 4 months. Still filtered. So the kernel itself wasn’t it either.
The clue was in the persistent journal: a single recorded boot from December 31 to May 12 10:13 UTC, and absolutely nothing after. Every reboot since the upgrade was failing before
systemd-journaldcould flush to disk — so the failure had to be in the initramfs, before the root filesystem was even mounted.What it almost certainly was
Hetzner Dedicated servers configure the initramfs network with
ip=dhcpon the kernel command line. That depends on Hetzner’s DHCP server replying to whatever request format the current kernel sends. Somewhere between kernel 6.18 / iproute2 6.18 and kernel 7.0 / iproute2 7.0, the request format changed enough that Hetzner’s DHCP stopped responding. Effects:- Old kernel at runtime kept the interface already configured (Phase A — 32 hours of healthy operation after the package upgrade).
- New kernel cold-boots, hits DHCP, never gets an IP, dropbear cannot listen, port 22 stays
filtered.
Hetzner’s own documentation has been quietly moving away from
ip=dhcptoward static IPv4 in the kernel command line. The fix is exactly that:GRUB_CMDLINE_LINUX="cryptdevice=/dev/md1:cryptroot ip=A.B.C.D::GATEWAY:255.255.255.255:hostname:eth0:none"One line in
/etc/default/grub,grub-mkconfig, reboot. No more dependency on Hetzner’s DHCP responding to whatever your current kernel sends.Why it matters for anyone running this stack
If you run Arch on Hetzner Dedicated with full-disk encryption and remote unlock via dropbear, the
ip=dhcpshipped byinstallimageis a latent bug. It can keep working for years and then break overnight, on every machine you have, after a routinepacman -Syyu. The static-IP version is what Hetzner now recommends and removes the entire dependency.Tooling
While debugging, I turned the whole rescue / chroot / diagnose / fix workflow into a Python CLI (
hal) — includinghal fix static-ip, which derives the static cmdline directly from your existingsystemd-networkd.networkfile:→ github.com/kevinveenbirkenbach/hetzner-arch-luks
Single command, idempotent, reversible (the original
#ArchLinux #bootFailure #debugging #DevOps #DHCP #Dropbear #fullDiskEncryption #GRUB #Hetzner #initramfs #kernelUpgrade #Linux #LUKS #mkinitcpio #pacman #postmortem #PythonCLI #serverOutage #sysadmin #systemdNetworkd/etc/default/grubis backed up to.hal-backup). If you’re on this stack, switch to static IP before the next kernel upgrade catches you. - The
-
When two Hetzner servers died at the same time
On May 12, 2026, two of my Arch Linux + LUKS servers at Hetzner became unreachable at the same moment. Both had been running for 4+ months without issue. Both had received the same
pacman -Syyuthe day before, but had stayed on the old kernel until the morning the websites stopped responding. I rebooted — SSH never came back.nmap -Pn -p 22showedfilteredfrom anywhere. No ping. No banner. The Hetzner Robot panel insisted the hardware was fine.Several hours went into hypotheses that turned out to be wrong:
- The
encryptsshinitcpio hook referencing a/usr/lib/initcpio/udev/11-dm-initramfs.rulesfile that no longer exists. Real bug, no boot impact — the initramfs rebuilds anyway. PermitRootLogin noinsshd_config. Real misconfiguration, fixed it, didn’t help. A refusing sshd showsclosed, notfiltered.- Predictable interface-naming drift after the systemd 260 upgrade. Patched the
.networkconfig to match by MAC. Useful hardening; not the cause. - Stale GRUB stage1 +
core.imgin the MBR. Arch never re-runsgrub-installafter agrubpackage upgrade. Refreshed it. Still filtered. - Kernel 7.0.5 regression. Downgraded to 6.18.3, the kernel that had run for 4 months. Still filtered. So the kernel itself wasn’t it either.
The clue was in the persistent journal: a single recorded boot from December 31 to May 12 10:13 UTC, and absolutely nothing after. Every reboot since the upgrade was failing before
systemd-journaldcould flush to disk — so the failure had to be in the initramfs, before the root filesystem was even mounted.What it almost certainly was
Hetzner Dedicated servers configure the initramfs network with
ip=dhcpon the kernel command line. That depends on Hetzner’s DHCP server replying to whatever request format the current kernel sends. Somewhere between kernel 6.18 / iproute2 6.18 and kernel 7.0 / iproute2 7.0, the request format changed enough that Hetzner’s DHCP stopped responding. Effects:- Old kernel at runtime kept the interface already configured (Phase A — 32 hours of healthy operation after the package upgrade).
- New kernel cold-boots, hits DHCP, never gets an IP, dropbear cannot listen, port 22 stays
filtered.
Hetzner’s own documentation has been quietly moving away from
ip=dhcptoward static IPv4 in the kernel command line. The fix is exactly that:GRUB_CMDLINE_LINUX="cryptdevice=/dev/md1:cryptroot ip=A.B.C.D::GATEWAY:255.255.255.255:hostname:eth0:none"One line in
/etc/default/grub,grub-mkconfig, reboot. No more dependency on Hetzner’s DHCP responding to whatever your current kernel sends.Why it matters for anyone running this stack
If you run Arch on Hetzner Dedicated with full-disk encryption and remote unlock via dropbear, the
ip=dhcpshipped byinstallimageis a latent bug. It can keep working for years and then break overnight, on every machine you have, after a routinepacman -Syyu. The static-IP version is what Hetzner now recommends and removes the entire dependency.Tooling
While debugging, I turned the whole rescue / chroot / diagnose / fix workflow into a Python CLI (
hal) — includinghal fix static-ip, which derives the static cmdline directly from your existingsystemd-networkd.networkfile:→ github.com/kevinveenbirkenbach/hetzner-arch-luks
Single command, idempotent, reversible (the original
#ArchLinux #bootFailure #debugging #DevOps #DHCP #Dropbear #fullDiskEncryption #GRUB #Hetzner #initramfs #kernelUpgrade #Linux #LUKS #mkinitcpio #pacman #postmortem #PythonCLI #serverOutage #sysadmin #systemdNetworkd/etc/default/grubis backed up to.hal-backup). If you’re on this stack, switch to static IP before the next kernel upgrade catches you. - The
-
When two Hetzner servers died at the same time
On May 12, 2026, two of my Arch Linux + LUKS servers at Hetzner became unreachable at the same moment. Both had been running for 4+ months without issue. Both had received the same
pacman -Syyuthe day before, but had stayed on the old kernel until the morning the websites stopped responding. I rebooted — SSH never came back.nmap -Pn -p 22showedfilteredfrom anywhere. No ping. No banner. The Hetzner Robot panel insisted the hardware was fine.Several hours went into hypotheses that turned out to be wrong:
- The
encryptsshinitcpio hook referencing a/usr/lib/initcpio/udev/11-dm-initramfs.rulesfile that no longer exists. Real bug, no boot impact — the initramfs rebuilds anyway. PermitRootLogin noinsshd_config. Real misconfiguration, fixed it, didn’t help. A refusing sshd showsclosed, notfiltered.- Predictable interface-naming drift after the systemd 260 upgrade. Patched the
.networkconfig to match by MAC. Useful hardening; not the cause. - Stale GRUB stage1 +
core.imgin the MBR. Arch never re-runsgrub-installafter agrubpackage upgrade. Refreshed it. Still filtered. - Kernel 7.0.5 regression. Downgraded to 6.18.3, the kernel that had run for 4 months. Still filtered. So the kernel itself wasn’t it either.
The clue was in the persistent journal: a single recorded boot from December 31 to May 12 10:13 UTC, and absolutely nothing after. Every reboot since the upgrade was failing before
systemd-journaldcould flush to disk — so the failure had to be in the initramfs, before the root filesystem was even mounted.What it almost certainly was
Hetzner Dedicated servers configure the initramfs network with
ip=dhcpon the kernel command line. That depends on Hetzner’s DHCP server replying to whatever request format the current kernel sends. Somewhere between kernel 6.18 / iproute2 6.18 and kernel 7.0 / iproute2 7.0, the request format changed enough that Hetzner’s DHCP stopped responding. Effects:- Old kernel at runtime kept the interface already configured (Phase A — 32 hours of healthy operation after the package upgrade).
- New kernel cold-boots, hits DHCP, never gets an IP, dropbear cannot listen, port 22 stays
filtered.
Hetzner’s own documentation has been quietly moving away from
ip=dhcptoward static IPv4 in the kernel command line. The fix is exactly that:GRUB_CMDLINE_LINUX="cryptdevice=/dev/md1:cryptroot ip=A.B.C.D::GATEWAY:255.255.255.255:hostname:eth0:none"One line in
/etc/default/grub,grub-mkconfig, reboot. No more dependency on Hetzner’s DHCP responding to whatever your current kernel sends.Why it matters for anyone running this stack
If you run Arch on Hetzner Dedicated with full-disk encryption and remote unlock via dropbear, the
ip=dhcpshipped byinstallimageis a latent bug. It can keep working for years and then break overnight, on every machine you have, after a routinepacman -Syyu. The static-IP version is what Hetzner now recommends and removes the entire dependency.Tooling
While debugging, I turned the whole rescue / chroot / diagnose / fix workflow into a Python CLI (
hal) — includinghal fix static-ip, which derives the static cmdline directly from your existingsystemd-networkd.networkfile:→ github.com/kevinveenbirkenbach/hetzner-arch-luks
Single command, idempotent, reversible (the original
#ArchLinux #bootFailure #debugging #DevOps #DHCP #Dropbear #fullDiskEncryption #GRUB #Hetzner #initramfs #kernelUpgrade #Linux #LUKS #mkinitcpio #pacman #postmortem #PythonCLI #serverOutage #sysadmin #systemdNetworkd/etc/default/grubis backed up to.hal-backup). If you’re on this stack, switch to static IP before the next kernel upgrade catches you. - The
-
When two Hetzner servers died at the same time
On May 12, 2026, two of my Arch Linux + LUKS servers at Hetzner became unreachable at the same moment. Both had been running for 4+ months without issue. Both had received the same
pacman -Syyuthe day before, but had stayed on the old kernel until the morning the websites stopped responding. I rebooted — SSH never came back.nmap -Pn -p 22showedfilteredfrom anywhere. No ping. No banner. The Hetzner Robot panel insisted the hardware was fine.Several hours went into hypotheses that turned out to be wrong:
- The
encryptsshinitcpio hook referencing a/usr/lib/initcpio/udev/11-dm-initramfs.rulesfile that no longer exists. Real bug, no boot impact — the initramfs rebuilds anyway. PermitRootLogin noinsshd_config. Real misconfiguration, fixed it, didn’t help. A refusing sshd showsclosed, notfiltered.- Predictable interface-naming drift after the systemd 260 upgrade. Patched the
.networkconfig to match by MAC. Useful hardening; not the cause. - Stale GRUB stage1 +
core.imgin the MBR. Arch never re-runsgrub-installafter agrubpackage upgrade. Refreshed it. Still filtered. - Kernel 7.0.5 regression. Downgraded to 6.18.3, the kernel that had run for 4 months. Still filtered. So the kernel itself wasn’t it either.
The clue was in the persistent journal: a single recorded boot from December 31 to May 12 10:13 UTC, and absolutely nothing after. Every reboot since the upgrade was failing before
systemd-journaldcould flush to disk — so the failure had to be in the initramfs, before the root filesystem was even mounted.What it almost certainly was
Hetzner Dedicated servers configure the initramfs network with
ip=dhcpon the kernel command line. That depends on Hetzner’s DHCP server replying to whatever request format the current kernel sends. Somewhere between kernel 6.18 / iproute2 6.18 and kernel 7.0 / iproute2 7.0, the request format changed enough that Hetzner’s DHCP stopped responding. Effects:- Old kernel at runtime kept the interface already configured (Phase A — 32 hours of healthy operation after the package upgrade).
- New kernel cold-boots, hits DHCP, never gets an IP, dropbear cannot listen, port 22 stays
filtered.
Hetzner’s own documentation has been quietly moving away from
ip=dhcptoward static IPv4 in the kernel command line. The fix is exactly that:GRUB_CMDLINE_LINUX="cryptdevice=/dev/md1:cryptroot ip=A.B.C.D::GATEWAY:255.255.255.255:hostname:eth0:none"One line in
/etc/default/grub,grub-mkconfig, reboot. No more dependency on Hetzner’s DHCP responding to whatever your current kernel sends.Why it matters for anyone running this stack
If you run Arch on Hetzner Dedicated with full-disk encryption and remote unlock via dropbear, the
ip=dhcpshipped byinstallimageis a latent bug. It can keep working for years and then break overnight, on every machine you have, after a routinepacman -Syyu. The static-IP version is what Hetzner now recommends and removes the entire dependency.Tooling
While debugging, I turned the whole rescue / chroot / diagnose / fix workflow into a Python CLI (
hal) — includinghal fix static-ip, which derives the static cmdline directly from your existingsystemd-networkd.networkfile:→ github.com/kevinveenbirkenbach/hetzner-arch-luks
Single command, idempotent, reversible (the original
#ArchLinux #bootFailure #debugging #DevOps #DHCP #Dropbear #fullDiskEncryption #GRUB #Hetzner #initramfs #kernelUpgrade #Linux #LUKS #mkinitcpio #pacman #postmortem #PythonCLI #serverOutage #sysadmin #systemdNetworkd/etc/default/grubis backed up to.hal-backup). If you’re on this stack, switch to static IP before the next kernel upgrade catches you. - The
-
Updated https://fittrackee.escuco.de/ to #fittrackee v.0.8.7
- new sport #swimrun
- bug fix CLI - fix limit for user data export cleanup
- some translation updatesMany thanks to @FitTrackee and all contributors.
The way I see it, a lot of work is currently being put into FitTrackee. The first v0.9 beta pre-releases are here and it seems to be heading towards federation. I think it's going to be a blast.
#opensource #selfhosting #running #cycling #biking #laufen #radfahren #activitytracker
-
Updated https://fittrackee.escuco.de/ to #fittrackee v.0.8.7
- new sport #swimrun
- bug fix CLI - fix limit for user data export cleanup
- some translation updatesMany thanks to @FitTrackee and all contributors.
The way I see it, a lot of work is currently being put into FitTrackee. The first v0.9 beta pre-releases are here and it seems to be heading towards federation. I think it's going to be a blast.
#opensource #selfhosting #running #cycling #biking #laufen #radfahren #activitytracker
-
Updated https://fittrackee.escuco.de/ to #fittrackee v.0.8.7
- new sport #swimrun
- bug fix CLI - fix limit for user data export cleanup
- some translation updatesMany thanks to @FitTrackee and all contributors.
The way I see it, a lot of work is currently being put into FitTrackee. The first v0.9 beta pre-releases are here and it seems to be heading towards federation. I think it's going to be a blast.
#opensource #selfhosting #running #cycling #biking #laufen #radfahren #activitytracker
-
Updated https://fittrackee.escuco.de/ to #fittrackee v.0.8.7
- new sport #swimrun
- bug fix CLI - fix limit for user data export cleanup
- some translation updatesMany thanks to @FitTrackee and all contributors.
The way I see it, a lot of work is currently being put into FitTrackee. The first v0.9 beta pre-releases are here and it seems to be heading towards federation. I think it's going to be a blast.
#opensource #selfhosting #running #cycling #biking #laufen #radfahren #activitytracker
-
Claude ест токены впустую, но я его прокачал
В материале расскажу вам о инструменте для AI-ассистента работающего CLI на PHP + SQLite. Который парсит проект, строит графы зависимостей и даёт Claude точечный доступ к коду: конкретный метод, поля класса, цепочка наследования, все SQL-запросы к таблице — одной командой, без чтения файлов целиком. Сейчас поддерживает Go , PHP и JavaScript, позже добавлю и C.ссылочка на гитхаб внизу) Claude знает структуру проекта — но недостаточно хорошо Claude Code читает CLAUDE.md , понимает архитектуру, знает какие файлы за что отвечают. Но когда доходит до дела — всё равно читает файлы целиком. Нужен один метод — читает весь класс. Нужно найти где вызывается функция — читает директорию за директорией. Контекст тает, а реальной работы ещё не было. К тому моменту как он добрался до ответа, контекст уже наполовину занят файлами которые я и сам мог открыть.Или другой сценарий: нужно понять какие поля у сущности. Claude читает файл целиком, хотя там нужны только первые 20 строк с полями и конструктором.Контекстное окно — главный ресурс при работе с AI на большом проекте. Тратить его на чтение файлов целиком расточительно.Меня это раздражало. Написал инструмент. Что я сделал Написал два PHP-скрипта: buildGraph.php — сканирует проект и строит граф зависимостей в SQLite. Парсит PHP и JS: классы, методы, вызовы, импорты, наследование. Запуск инкрементальный — повторный проход обновляет только изменённые файлы за 100–200 мс. claudeSearch.php — CLI-интерфейс. Даёт AI точечный доступ к коду одной командой.
-
Claude ест токены впустую, но я его прокачал
В материале расскажу вам о инструменте для AI-ассистента работающего CLI на PHP + SQLite. Который парсит проект, строит графы зависимостей и даёт Claude точечный доступ к коду: конкретный метод, поля класса, цепочка наследования, все SQL-запросы к таблице — одной командой, без чтения файлов целиком. Сейчас поддерживает Go , PHP и JavaScript, позже добавлю и C.ссылочка на гитхаб внизу) Claude знает структуру проекта — но недостаточно хорошо Claude Code читает CLAUDE.md , понимает архитектуру, знает какие файлы за что отвечают. Но когда доходит до дела — всё равно читает файлы целиком. Нужен один метод — читает весь класс. Нужно найти где вызывается функция — читает директорию за директорией. Контекст тает, а реальной работы ещё не было. К тому моменту как он добрался до ответа, контекст уже наполовину занят файлами которые я и сам мог открыть.Или другой сценарий: нужно понять какие поля у сущности. Claude читает файл целиком, хотя там нужны только первые 20 строк с полями и конструктором.Контекстное окно — главный ресурс при работе с AI на большом проекте. Тратить его на чтение файлов целиком расточительно.Меня это раздражало. Написал инструмент. Что я сделал Написал два PHP-скрипта: buildGraph.php — сканирует проект и строит граф зависимостей в SQLite. Парсит PHP и JS: классы, методы, вызовы, импорты, наследование. Запуск инкрементальный — повторный проход обновляет только изменённые файлы за 100–200 мс. claudeSearch.php — CLI-интерфейс. Даёт AI точечный доступ к коду одной командой.
-
Claude ест токены впустую, но я его прокачал
В материале расскажу вам о инструменте для AI-ассистента работающего CLI на PHP + SQLite. Который парсит проект, строит графы зависимостей и даёт Claude точечный доступ к коду: конкретный метод, поля класса, цепочка наследования, все SQL-запросы к таблице — одной командой, без чтения файлов целиком. Сейчас поддерживает Go , PHP и JavaScript, позже добавлю и C.ссылочка на гитхаб внизу) Claude знает структуру проекта — но недостаточно хорошо Claude Code читает CLAUDE.md , понимает архитектуру, знает какие файлы за что отвечают. Но когда доходит до дела — всё равно читает файлы целиком. Нужен один метод — читает весь класс. Нужно найти где вызывается функция — читает директорию за директорией. Контекст тает, а реальной работы ещё не было. К тому моменту как он добрался до ответа, контекст уже наполовину занят файлами которые я и сам мог открыть.Или другой сценарий: нужно понять какие поля у сущности. Claude читает файл целиком, хотя там нужны только первые 20 строк с полями и конструктором.Контекстное окно — главный ресурс при работе с AI на большом проекте. Тратить его на чтение файлов целиком расточительно.Меня это раздражало. Написал инструмент. Что я сделал Написал два PHP-скрипта: buildGraph.php — сканирует проект и строит граф зависимостей в SQLite. Парсит PHP и JS: классы, методы, вызовы, импорты, наследование. Запуск инкрементальный — повторный проход обновляет только изменённые файлы за 100–200 мс. claudeSearch.php — CLI-интерфейс. Даёт AI точечный доступ к коду одной командой.
-
Claude ест токены впустую, но я его прокачал
В материале расскажу вам о инструменте для AI-ассистента работающего CLI на PHP + SQLite. Который парсит проект, строит графы зависимостей и даёт Claude точечный доступ к коду: конкретный метод, поля класса, цепочка наследования, все SQL-запросы к таблице — одной командой, без чтения файлов целиком. Сейчас поддерживает Go , PHP и JavaScript, позже добавлю и C.ссылочка на гитхаб внизу) Claude знает структуру проекта — но недостаточно хорошо Claude Code читает CLAUDE.md , понимает архитектуру, знает какие файлы за что отвечают. Но когда доходит до дела — всё равно читает файлы целиком. Нужен один метод — читает весь класс. Нужно найти где вызывается функция — читает директорию за директорией. Контекст тает, а реальной работы ещё не было. К тому моменту как он добрался до ответа, контекст уже наполовину занят файлами которые я и сам мог открыть.Или другой сценарий: нужно понять какие поля у сущности. Claude читает файл целиком, хотя там нужны только первые 20 строк с полями и конструктором.Контекстное окно — главный ресурс при работе с AI на большом проекте. Тратить его на чтение файлов целиком расточительно.Меня это раздражало. Написал инструмент. Что я сделал Написал два PHP-скрипта: buildGraph.php — сканирует проект и строит граф зависимостей в SQLite. Парсит PHP и JS: классы, методы, вызовы, импорты, наследование. Запуск инкрементальный — повторный проход обновляет только изменённые файлы за 100–200 мс. claudeSearch.php — CLI-интерфейс. Даёт AI точечный доступ к коду одной командой.
-
Вы пустили ИИ-агента в репозиторий, теперь разбираемся, что он может сломать
В феврале 2026 года Claude Cowork стирает 15 лет семейных фотографий одной командой. За полгода до этого, в августе 2025-го, случился кейс Nx supply chain: малварь впервые в истории использует локальные ИИ-CLI как инструмент разведки. В марте этого года Google Cloud Threat Horizons H1-2026 подтверждает: часть украденных в Nx токенов используется кампанией UNC6426 для перехода CI/CD → cloud admin через злоупотребление OIDC. 72 часа от первого коммита до админских прав в AWS. Всё это примеры того, что может происходить, когда у ИИ-агента есть руки и мы забываем, на чьей машине эти руки действуют. Данная статья предназначается для неравнодушных инженеров, AppSec, DevSecOps специалистов и всех тех, кто хоть раз запускал агента у себя на машине. Запрещать агентов в контуре бесполезно, отказываться от них самому глупо, но чем они так опасны? Сперва развеем туман неясности, построим модель угроз, собранную на реальных инцидентах и опубликованных CVE, а после будут конкретные рекомендации, как ограничить агента песочницей без ущерба для эффективности разработки. И как запускать --dangerously-skip-permissions без страха.
https://habr.com/ru/companies/pt/articles/1030532/
#ИИагенты #безопасность #OWASP #supply_chain #Claude_Code #prompt_injection #DevSecOps
-
Вы пустили ИИ-агента в репозиторий, теперь разбираемся, что он может сломать
В феврале 2026 года Claude Cowork стирает 15 лет семейных фотографий одной командой. За полгода до этого, в августе 2025-го, случился кейс Nx supply chain: малварь впервые в истории использует локальные ИИ-CLI как инструмент разведки. В марте этого года Google Cloud Threat Horizons H1-2026 подтверждает: часть украденных в Nx токенов используется кампанией UNC6426 для перехода CI/CD → cloud admin через злоупотребление OIDC. 72 часа от первого коммита до админских прав в AWS. Всё это примеры того, что может происходить, когда у ИИ-агента есть руки и мы забываем, на чьей машине эти руки действуют. Данная статья предназначается для неравнодушных инженеров, AppSec, DevSecOps специалистов и всех тех, кто хоть раз запускал агента у себя на машине. Запрещать агентов в контуре бесполезно, отказываться от них самому глупо, но чем они так опасны? Сперва развеем туман неясности, построим модель угроз, собранную на реальных инцидентах и опубликованных CVE, а после будут конкретные рекомендации, как ограничить агента песочницей без ущерба для эффективности разработки. И как запускать --dangerously-skip-permissions без страха.
https://habr.com/ru/companies/pt/articles/1030532/
#ИИагенты #безопасность #OWASP #supply_chain #Claude_Code #prompt_injection #DevSecOps
-
Вы пустили ИИ-агента в репозиторий, теперь разбираемся, что он может сломать
В феврале 2026 года Claude Cowork стирает 15 лет семейных фотографий одной командой. За полгода до этого, в августе 2025-го, случился кейс Nx supply chain: малварь впервые в истории использует локальные ИИ-CLI как инструмент разведки. В марте этого года Google Cloud Threat Horizons H1-2026 подтверждает: часть украденных в Nx токенов используется кампанией UNC6426 для перехода CI/CD → cloud admin через злоупотребление OIDC. 72 часа от первого коммита до админских прав в AWS. Всё это примеры того, что может происходить, когда у ИИ-агента есть руки и мы забываем, на чьей машине эти руки действуют. Данная статья предназначается для неравнодушных инженеров, AppSec, DevSecOps специалистов и всех тех, кто хоть раз запускал агента у себя на машине. Запрещать агентов в контуре бесполезно, отказываться от них самому глупо, но чем они так опасны? Сперва развеем туман неясности, построим модель угроз, собранную на реальных инцидентах и опубликованных CVE, а после будут конкретные рекомендации, как ограничить агента песочницей без ущерба для эффективности разработки. И как запускать --dangerously-skip-permissions без страха.
https://habr.com/ru/companies/pt/articles/1030532/
#ИИагенты #безопасность #OWASP #supply_chain #Claude_Code #prompt_injection #DevSecOps
-
Вы пустили ИИ-агента в репозиторий, теперь разбираемся, что он может сломать
В феврале 2026 года Claude Cowork стирает 15 лет семейных фотографий одной командой. За полгода до этого, в августе 2025-го, случился кейс Nx supply chain: малварь впервые в истории использует локальные ИИ-CLI как инструмент разведки. В марте этого года Google Cloud Threat Horizons H1-2026 подтверждает: часть украденных в Nx токенов используется кампанией UNC6426 для перехода CI/CD → cloud admin через злоупотребление OIDC. 72 часа от первого коммита до админских прав в AWS. Всё это примеры того, что может происходить, когда у ИИ-агента есть руки и мы забываем, на чьей машине эти руки действуют. Данная статья предназначается для неравнодушных инженеров, AppSec, DevSecOps специалистов и всех тех, кто хоть раз запускал агента у себя на машине. Запрещать агентов в контуре бесполезно, отказываться от них самому глупо, но чем они так опасны? Сперва развеем туман неясности, построим модель угроз, собранную на реальных инцидентах и опубликованных CVE, а после будут конкретные рекомендации, как ограничить агента песочницей без ущерба для эффективности разработки. И как запускать --dangerously-skip-permissions без страха.
https://habr.com/ru/companies/pt/articles/1030532/
#ИИагенты #безопасность #OWASP #supply_chain #Claude_Code #prompt_injection #DevSecOps
-
Auto Dream переписывает вашу память в Claude Code. Откатить нельзя. Поэтому я собрал cc-janitor
# Auto Dream переписывает вашу память в Claude Code. Откатить нельзя. Поэтому я собрал cc-janitor Продолжение серии. Предыдущие части: [антирегрессионный сетап]( https://habr.com/ru/articles/1013330/ ) (топ-5 за сутки), [иерархический контекст]( https://habr.com/ru/articles/1024878/) Два месяца ежедневной работы в Claude Code оставляют свалку. Сотни старых сессий на гигабайты. Правила permissions, размазанные по пяти файлам settings.json — половина уже неактуальна. CLAUDE.md и memory-файлы, которые сами себе противоречат. Хуки, которые молча сломались неделю назад. А потом Anthropic выкатил Auto Dream. Auto Dream — это LLM, который между сессиями переписывает вашу проектную память. Консолидирует, сокращает, реорганизует. Агрессивно. Без отката. Без показа что именно изменилось. Рекомендация самого Anthropic: «сделайте бэкап ~/.claude/ перед включением». Инструмента, который делает этот бэкап — в экосистеме Claude Code не существовало. А еще почти не существует универсальных инструментов для чистки и обслуживания вашей CC среды. Мне нужен был бэкап. Мне также нужна была чистка. За шесть дней я собрал cc-janitor — детерминированный TUI/CLI, который аудитирует, чистит и оборачивает Auto Dream наблюдаемыми, откатываемыми снапшотами. ## Почему «детерминированный» — ключевое слово В пайплайне очистки cc-janitor нет LLM. Auto Dream использует LLM — именно поэтому он может перечистить, галлюцинировать противоречия или потерять провенанс. cc-janitor использует regex, подсчёт совпадений в транскриптах, парсинг frontmatter и SHA-256 отпечатки. Если правило неоднозначно — инструмент не действует, а поверхностно показывает проблему. Решение принимаете вы.
https://habr.com/ru/articles/1034614/
#Claude_Code #Python #DevTools #Auto_Dream #open_source #ai #tools #lifehack
-
Auto Dream переписывает вашу память в Claude Code. Откатить нельзя. Поэтому я собрал cc-janitor
# Auto Dream переписывает вашу память в Claude Code. Откатить нельзя. Поэтому я собрал cc-janitor Продолжение серии. Предыдущие части: [антирегрессионный сетап]( https://habr.com/ru/articles/1013330/ ) (топ-5 за сутки), [иерархический контекст]( https://habr.com/ru/articles/1024878/) Два месяца ежедневной работы в Claude Code оставляют свалку. Сотни старых сессий на гигабайты. Правила permissions, размазанные по пяти файлам settings.json — половина уже неактуальна. CLAUDE.md и memory-файлы, которые сами себе противоречат. Хуки, которые молча сломались неделю назад. А потом Anthropic выкатил Auto Dream. Auto Dream — это LLM, который между сессиями переписывает вашу проектную память. Консолидирует, сокращает, реорганизует. Агрессивно. Без отката. Без показа что именно изменилось. Рекомендация самого Anthropic: «сделайте бэкап ~/.claude/ перед включением». Инструмента, который делает этот бэкап — в экосистеме Claude Code не существовало. А еще почти не существует универсальных инструментов для чистки и обслуживания вашей CC среды. Мне нужен был бэкап. Мне также нужна была чистка. За шесть дней я собрал cc-janitor — детерминированный TUI/CLI, который аудитирует, чистит и оборачивает Auto Dream наблюдаемыми, откатываемыми снапшотами. ## Почему «детерминированный» — ключевое слово В пайплайне очистки cc-janitor нет LLM. Auto Dream использует LLM — именно поэтому он может перечистить, галлюцинировать противоречия или потерять провенанс. cc-janitor использует regex, подсчёт совпадений в транскриптах, парсинг frontmatter и SHA-256 отпечатки. Если правило неоднозначно — инструмент не действует, а поверхностно показывает проблему. Решение принимаете вы.
https://habr.com/ru/articles/1034614/
#Claude_Code #Python #DevTools #Auto_Dream #open_source #ai #tools #lifehack
-
Auto Dream переписывает вашу память в Claude Code. Откатить нельзя. Поэтому я собрал cc-janitor
# Auto Dream переписывает вашу память в Claude Code. Откатить нельзя. Поэтому я собрал cc-janitor Продолжение серии. Предыдущие части: [антирегрессионный сетап]( https://habr.com/ru/articles/1013330/ ) (топ-5 за сутки), [иерархический контекст]( https://habr.com/ru/articles/1024878/) Два месяца ежедневной работы в Claude Code оставляют свалку. Сотни старых сессий на гигабайты. Правила permissions, размазанные по пяти файлам settings.json — половина уже неактуальна. CLAUDE.md и memory-файлы, которые сами себе противоречат. Хуки, которые молча сломались неделю назад. А потом Anthropic выкатил Auto Dream. Auto Dream — это LLM, который между сессиями переписывает вашу проектную память. Консолидирует, сокращает, реорганизует. Агрессивно. Без отката. Без показа что именно изменилось. Рекомендация самого Anthropic: «сделайте бэкап ~/.claude/ перед включением». Инструмента, который делает этот бэкап — в экосистеме Claude Code не существовало. А еще почти не существует универсальных инструментов для чистки и обслуживания вашей CC среды. Мне нужен был бэкап. Мне также нужна была чистка. За шесть дней я собрал cc-janitor — детерминированный TUI/CLI, который аудитирует, чистит и оборачивает Auto Dream наблюдаемыми, откатываемыми снапшотами. ## Почему «детерминированный» — ключевое слово В пайплайне очистки cc-janitor нет LLM. Auto Dream использует LLM — именно поэтому он может перечистить, галлюцинировать противоречия или потерять провенанс. cc-janitor использует regex, подсчёт совпадений в транскриптах, парсинг frontmatter и SHA-256 отпечатки. Если правило неоднозначно — инструмент не действует, а поверхностно показывает проблему. Решение принимаете вы.
https://habr.com/ru/articles/1034614/
#Claude_Code #Python #DevTools #Auto_Dream #open_source #ai #tools #lifehack
-
Auto Dream переписывает вашу память в Claude Code. Откатить нельзя. Поэтому я собрал cc-janitor
# Auto Dream переписывает вашу память в Claude Code. Откатить нельзя. Поэтому я собрал cc-janitor Продолжение серии. Предыдущие части: [антирегрессионный сетап]( https://habr.com/ru/articles/1013330/ ) (топ-5 за сутки), [иерархический контекст]( https://habr.com/ru/articles/1024878/) Два месяца ежедневной работы в Claude Code оставляют свалку. Сотни старых сессий на гигабайты. Правила permissions, размазанные по пяти файлам settings.json — половина уже неактуальна. CLAUDE.md и memory-файлы, которые сами себе противоречат. Хуки, которые молча сломались неделю назад. А потом Anthropic выкатил Auto Dream. Auto Dream — это LLM, который между сессиями переписывает вашу проектную память. Консолидирует, сокращает, реорганизует. Агрессивно. Без отката. Без показа что именно изменилось. Рекомендация самого Anthropic: «сделайте бэкап ~/.claude/ перед включением». Инструмента, который делает этот бэкап — в экосистеме Claude Code не существовало. А еще почти не существует универсальных инструментов для чистки и обслуживания вашей CC среды. Мне нужен был бэкап. Мне также нужна была чистка. За шесть дней я собрал cc-janitor — детерминированный TUI/CLI, который аудитирует, чистит и оборачивает Auto Dream наблюдаемыми, откатываемыми снапшотами. ## Почему «детерминированный» — ключевое слово В пайплайне очистки cc-janitor нет LLM. Auto Dream использует LLM — именно поэтому он может перечистить, галлюцинировать противоречия или потерять провенанс. cc-janitor использует regex, подсчёт совпадений в транскриптах, парсинг frontmatter и SHA-256 отпечатки. Если правило неоднозначно — инструмент не действует, а поверхностно показывает проблему. Решение принимаете вы.
https://habr.com/ru/articles/1034614/
#Claude_Code #Python #DevTools #Auto_Dream #open_source #ai #tools #lifehack
-
1 миллион токенов в Opus 4.7 — маркетинг. Реально полезных — 300 тысяч. И сами Anthropic это подтверждают
В начале мая Кангвук Ли (CAIO Krafton) опубликовал в X разбор: двумя API-вызовами и 35 1M токенов контекста в Claude Opus 4.7 — это «доступно», а не «полезно». В system card §8.7.2 сами Anthropic пишут: на 1M MRCR упал с 78.3% (Opus 4.6) до 32.2% (Opus 4.7), и для long-context retrieval они рекомендуют держать 4.6 как fallback. Деградирует и 4.6 — просто в два раза медленнее. Параллельно Кангвук Ли двумя API-вызовами и 35 строками Python вытащил из Codex AES-зашифрованный compaction-промпт. Сравнил с открытым compact_20260112 от Anthropic. Они близнецы. Реальная разница не в промпте, а в том, где живёт компакция. GPT-5.1-Codex-Max — первая модель, нативно обученная компакции на уровне весов. Anthropic пока через сервер-сайд хук. Это и объясняет, почему по ощущениям Codex держит длинные сессии лучше. Внутри: verbatim промпты обеих систем рядом, side-by-side таблица, разбор системной карты Opus 4.7 и практические выводы для Claude Code и Codex CLI.
https://habr.com/ru/articles/1034214/
#LLM #Codex #Claude_Code #Opus_47 #GPT51CodexMax #contextcompaction #promptinjection #AIагенты
-
1 миллион токенов в Opus 4.7 — маркетинг. Реально полезных — 300 тысяч. И сами Anthropic это подтверждают
В начале мая Кангвук Ли (CAIO Krafton) опубликовал в X разбор: двумя API-вызовами и 35 1M токенов контекста в Claude Opus 4.7 — это «доступно», а не «полезно». В system card §8.7.2 сами Anthropic пишут: на 1M MRCR упал с 78.3% (Opus 4.6) до 32.2% (Opus 4.7), и для long-context retrieval они рекомендуют держать 4.6 как fallback. Деградирует и 4.6 — просто в два раза медленнее. Параллельно Кангвук Ли двумя API-вызовами и 35 строками Python вытащил из Codex AES-зашифрованный compaction-промпт. Сравнил с открытым compact_20260112 от Anthropic. Они близнецы. Реальная разница не в промпте, а в том, где живёт компакция. GPT-5.1-Codex-Max — первая модель, нативно обученная компакции на уровне весов. Anthropic пока через сервер-сайд хук. Это и объясняет, почему по ощущениям Codex держит длинные сессии лучше. Внутри: verbatim промпты обеих систем рядом, side-by-side таблица, разбор системной карты Opus 4.7 и практические выводы для Claude Code и Codex CLI.
https://habr.com/ru/articles/1034214/
#LLM #Codex #Claude_Code #Opus_47 #GPT51CodexMax #contextcompaction #promptinjection #AIагенты
-
1 миллион токенов в Opus 4.7 — маркетинг. Реально полезных — 300 тысяч. И сами Anthropic это подтверждают
В начале мая Кангвук Ли (CAIO Krafton) опубликовал в X разбор: двумя API-вызовами и 35 1M токенов контекста в Claude Opus 4.7 — это «доступно», а не «полезно». В system card §8.7.2 сами Anthropic пишут: на 1M MRCR упал с 78.3% (Opus 4.6) до 32.2% (Opus 4.7), и для long-context retrieval они рекомендуют держать 4.6 как fallback. Деградирует и 4.6 — просто в два раза медленнее. Параллельно Кангвук Ли двумя API-вызовами и 35 строками Python вытащил из Codex AES-зашифрованный compaction-промпт. Сравнил с открытым compact_20260112 от Anthropic. Они близнецы. Реальная разница не в промпте, а в том, где живёт компакция. GPT-5.1-Codex-Max — первая модель, нативно обученная компакции на уровне весов. Anthropic пока через сервер-сайд хук. Это и объясняет, почему по ощущениям Codex держит длинные сессии лучше. Внутри: verbatim промпты обеих систем рядом, side-by-side таблица, разбор системной карты Opus 4.7 и практические выводы для Claude Code и Codex CLI.
https://habr.com/ru/articles/1034214/
#LLM #Codex #Claude_Code #Opus_47 #GPT51CodexMax #contextcompaction #promptinjection #AIагенты