by blader
Agent skill that removes signs of AI-generated writing from text
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
# Add to your Claude Code skills
git clone https://github.com/blader/humanizerGuides for using ai agents skills like humanizer.
Rewrite AI-sounding text so it reads like the writer, not a chatbot. Do not change what it says or make up details.
The patterns below come from Wikipedia's "Signs of AI writing", maintained by WikiProject AI Cleanup.
When given text to humanize:
The input type controls what you return. See How to return the result. Use the same rewrite process in every mode.
If the user provides a writing sample (their own previous writing), analyze it before rewriting:
A writing sample takes priority over these style rules. If the sample uses em dashes, keep them at about the same rate. Do not apply §14 as a ban.
Removing AI patterns is only half the job. The result should still sound like a person.
Use personality in blog posts, essays, opinions, and personal writing when it fits the writer. Keep reference, technical, legal, and factual text neutral. Do not add opinions or first-person language where they do not belong.
When personality fits, keep the writer's opinions, uncertainty, mixed feelings, humor, asides, and uneven rhythm. Never invent facts to make the text feel personal.
Words to watch: stands/serves as, is a testament/reminder, a vital/significant/crucial/pivotal/key role/moment, underscores/highlights its importance/significance, reflects broader, symbolizing its ongoing/enduring/lasting, contributing to the, setting the stage for, marking/shaping the, represents/marks a shift, key turning point, evolving landscape, focal point, indelible mark, deeply rooted Problem: AI writing often claims that ordinary details mark a major change, prove a legacy, or reflect a broad trend. Before:
The Statistical Institute of Catalonia was officially established in 1989, marking a pivotal moment in the evolution of regional statistics in Spain. This initiative was part of a broader movement across Spain to decentralize administrative functions and enhance regional governance. After: The Statistical Institute of Catalonia was established in 1989, part of a wider decentralization of administrative functions in Spain.
Words to watch: independent coverage, local/regional/national media outlets, written by a leading expert, active social media presence Problem: AI writing often lists well-known publications or follower counts to prove that a person matters. The list usually gives no useful context. Before:
Her views have been cited in The New York Times, BBC, Financial Times, and The Hindu. She maintains an active social media presence with over 500,000 followers. After: Her views have been cited in The New York Times and the BBC.
If the source explains what the person said and where, keep that useful citation. Do not invent context for a shorter version.
Words to watch: highlighting/underscoring/emphasizing..., ensuring..., reflecting/symbolizing..., contributing to..., cultivating/fostering..., encompassing..., showcasing... Problem: AI writing often adds an -ing phrase to make a simple fact sound deeper than it is. Before:
The temple's color palette of blue, green, and gold resonates with the region's natural beauty, symbolizing Texas bluebonnets, the Gulf of Mexico, and the diverse Texan landscapes, reflecting the community's deep connection to the land. After: The temple is painted blue, green, and gold, colors meant to evoke Texas bluebonnets and the Gulf of Mexico.
Words to watch: boasts a, vibrant, rich (figurative), profound, enhancing its, showcasing, exemplifies, commitment to, natural beauty, nestled, in the heart of, groundbreaking (figurative), renowned, breathtaking, must-visit, stunning Problem: AI writing often sounds like an advertisement, especially when it describes places, culture, products, or organizations. Before:
Nestled within the breathtaking region of Gonder in Ethiopia, Alamata Raya Kobo stands as a vibrant town with a rich cultural heritage and stunning natural beauty. After: Alamata Raya Kobo is a town in the Gonder region of Ethiopia.
Words to watch: Industry reports, Observers have cited, Experts argue, Some critics argue, several sources/publications (when few cited) Problem: AI writing often assigns a claim to unnamed experts, critics, reports, or observers. Before:
Due to its unique characteristics, the Haolai River is of interest to researchers and conservationists. Experts believe it plays a crucial role in the regional ecosystem. After: Researchers and conservationists study the Haolai River for its unusual characteristics.
Name a real source when the source text provides one. Otherwise, remove the unsupported claim. Never invent a source.
Words to watch: Despite its... faces several challenges..., Despite these challenges, Challenges and Legacy, Future Outlook Problem: AI articles often add a stock section about challenges, future prospects, or continued growth. These sections usually repeat vague claims instead of adding facts. Before:
Despite its industrial prosperity, Korattur faces challenges typical of urban areas, including traffic congestion and water scarcity. Despite these challenges, with its strategic location and ongoing initiatives, Korattur continues to thrive as an integral part of Chennai's growth. After: Korattur has recurring traffic congestion and water shortages.
Add details such as dates or public actions only when they come from the source or the user.
High-frequency AI words: Actually, additionally, align with, crucial, delve, emphasizing, enduring, enhance, fostering, garner, gate/gated/gating (figurative; preserve established technical usage), highlight (verb), interplay, intricate/intricacies, key (adjective), landscape (abstract noun), pivotal, quietly, showcase, tapestry (abstract noun), testament, underscore (verb), valuable, vibrant Problem: AI writing uses these words much more often than most people do, especially in groups. Before:
Additionally, a distinctive feature of Somali cuisine is the incorporation of camel meat. An enduring testament to Italian colonial influence is the widespread adoption of pasta in the local culinary landscape, showcasing how these dishes have integrated into the traditional diet. After: Somali cuisine also includes camel meat, which is considered a delicacy. Pasta dishes, introduced during Italian colonization, remain common, especially in the south.
Words to watch: serves as/stands as/marks/represents [a], boasts/features/offers [a] Problem: AI writing often replaces simple verbs such as is, are, and has with longer phrases. Before:
Gallery 825 serves as LAAA's exhibition space for contemporary art. The gallery features four separate spaces and boasts over 3,000 square feet. After: Gallery 825 is LAAA's exhibition space for contemporary art. The gallery has four rooms totaling 3,000 square feet.
Problem: AI writing overuses forms such as "Not only...but..." and "It's not just X, it's Y."
It also adds clipped endings such as "no guessing" instead of writing a clear clause. Before:
It's not just about the beat riding under the vocals; it's part of the aggression and atmosphere. It's not merely a song, it's a statement. After: The heavy beat adds to the aggressive tone. Before (tailing negation): The options come from the selected item, no guessing. After: The options come from the selected item without forcing the user to guess.
Problem: AI writing often forces ideas into groups of three to sound complete. Before:
The event features keynote sessions, panel discussions, and networking opportunities. Attendees can expect innovation, inspiration, and industry insights. After: The event includes talks and panels. There's also time for informal networking between sessions.
Problem: AI writing handles repetition by rule instead of by ear. It may keep renaming the same person or thing. It may also start several sentences with the same subject, often she or he.
Use one clear name for the same subject. For repeated openings, merge sentences, change the subject when that helps, or begin with the action. Before (synonym cycling):
The protagonist faces many challenges. The main character must overcome obstacles. The central figure eventually triumphs. The hero returns home. After: The protagonist faces many challenges but eventually triumphs and returns home. Before (repeated openings): She noted the door. She noted the lock on it. She filed both away. After: She noted the door and its lock, then filed both away.
Do not ban the repeated word. Fix the repeated sentence pattern. The remaining sentence may still start with "She."
Problem: AI writing often uses "from X to Y" when X and Y do not form a real range. Before:
Our journey through the universe has taken us from the singularity of the Big Bang to the grand cosmic web, from the birth and death of stars to the enigmatic dance of dark matter. After: The book covers the Big Bang, star formation, and current theories about dark matter.
Problem: AI writing often hides who acts or drops the subject. Use active voice when it makes the actor and action clearer. Before:
No configuration file needed. The results are preserved automatically. After: You do not need a configuration file. The system preserves the results automatically.
Rule: The final rewrite must not contain em dashes (—) or en dashes (–), unless the writer's sample uses them. Replace a dash with a period, comma, colon, or parentheses, or rewrite the sentence. Also check for spaced dashes (—) and double hyphens (--) used as dashes.
Before:
The term is primarily promoted by Dutch institutions—not by the people themselves. You don't say "Netherlands, Europe" as an address—yet this mislabeling continues—even in official documents. After: The term is primarily promoted by Dutch institutions, not by the people themselves. You don't say "Netherlands, Europe" as an address, yet this mislabeling continues in official documents. Before: The new policy — announced without warning — affects thousands of workers. The changes -- long overdue according to critics -- will take effect immediately. After: The new policy, announced without warning, affects thousands of workers. The changes, long overdue according to critics, will take effect immediately.
Before returning the rewrite, search for — and –. Remove each one unless the writer's sample uses that mark. In that case, match the sample's rate.
Problem: AI chatbots often bold words and phrases without a clear reason. Before:
It blends OKRs (Objectives and Key Results), KPIs (Key Performance Indicators), and visual strategy tools such as the Business Model Canvas (BMC) and Balanced Scorecard (BSC). After: It blends OKRs, KPIs, and visual strategy tools like the Business Model Canvas and Balanced Scorecard.
Problem: AI writing often uses vertical lists in which every item starts with a bold label and a colon. Before:
- User Experience: The user experience has been significantly improved with a new interface.
- Performance: Performance has been enhanced through optimized algorithms.
- Security: Security has been strengthened with end-to-end encryption. After: The update improves the interface, speeds up load times through optimized algorithms, and adds end-to-end encryption.
Problem: AI chatbots often capitalize every main word in a heading. Before:
Strategic Negotiations And Global Partnerships
After:
Strategic negotiations and global partnerships
Problem: AI chatbots often add emojis to headings and list items as decoration. Before:
🚀 Launch Phase: The product launches in Q3 💡 Key Insight: Users prefer simplicity ✅ Next Steps: Schedule follow-up meeting After: The product launches in Q3. User research showed a preference for simplicity. Next step: schedule a follow-up meeting.
Problem: ChatGPT often uses curly quotes (“...”) where the writer or target format uses straight quotes ("..."). Before:
He said “the project is on track” but others disagreed. After: He said "the project is on track" but others disagreed.
Words to watch: I hope this helps, Of course!, Certainly!, You're absolutely right!, Would you like..., Want me to...?, Want me to give examples?, Should I continue?, let me know, here is a... Problem: A chatbot's greeting, offer, or closing sometimes remains in text that should stand on its own. Before:
Here is an overview of the French Revolution. I hope this helps! Let me know if you'd like me to expand on any section. After: The French Revolution began in 1789 when financial crisis and food shortages led to widespread unrest.
Words to watch: as of [date], Up to my last training update, While specific details are limited/scarce..., based on available information, not publicly available, maintains a low profile, keeps personal details private, prefers to stay out of the spotlight, likely [grew up/studied/began], it is believed that Problem: Older models may mention the date when their knowledge ends. A model may also explain that it could not find a source, then fill the gap with a plausible guess. State what the source does not show, or remove the sentence. Do not present a guess as a fact. Before (cutoff disclaimer):
While specific details about the company's founding are not extensively documented in readily available sources, it appears to have been established sometime in the 1990s. After: The company's founding date is not documented in the available sources. (Or cut the sentence. State a date only if a source provides one.) Before (speculative gap-fill): Information about her early life is not publicly available, suggesting she maintains a low profile and keeps personal details private. She likely grew up in a middle-class household, which shaped her later interest in education reform. After: Her early life is not documented in the available sources. (Or omit the section.)
Problem: AI assistants often praise the user or agree before giving the answer. Before:
Great question! You're absolutely right that this is a complex topic. That's an excellent point about the economic factors. After: The economic factors you mentioned are relevant here.
Before → After:
Phrases to watch: to be fair, it's also possible, could potentially, might arguably, in some cases it may, this is an inference Problem: Repeated editing can add one qualifier after another until every claim sounds uncertain. Keep a qualifier only when the source supports it and the meaning needs it. Remove caveats that only repair an earlier overstatement. Before:
It could potentially possibly be argued that the policy might have some effect on outcomes. After: The policy may affect outcomes.
Problem: AI writing often ends with vague optimism instead of the last useful fact. Before:
The future looks bright for the company. Exciting times lie ahead as they continue their journey toward excellence. This represents a major step in the right direction. After: (Cut the paragraph. End on the last concrete fact instead of a send-off. If the source states real plans, use those.)
Words to watch: third-party, cross-functional, client-facing, data-driven, decision-making, well-known, high-quality, real-time, long-term, end-to-end
Problem: AI writing often hyphenates these pairs everywhere. Keep the hyphen before a noun when grammar needs it, as in a high-quality report. Drop it after the noun, as in the report is high quality.
Before:
The cross-functional team delivered a high-quality, data-driven report. The team is cross-functional, the report is high-quality, and the methodology is data-driven. After: The cross-functional team delivered a high-quality, data-driven report. The team is cross functional, the report is high quality, and the methodology is data driven.
Phrases to watch: The real question is, at its core, in reality, what really matters, fundamentally, the deeper issue, the heart of the matter Problem: AI writing uses these phrases to make an ordinary point sound like a hidden truth. Before:
The real question is whether teams can adapt. At its core, what really matters is organizational readiness. After: The question is whether teams can adapt. That mostly depends on whether the organization is ready to change its habits.
Phrases to watch: Let's dive in, let's explore, let's break this down, here's what you need to know, now let's look at, without further ado, heads up, quick note, before I forget Problem: AI writing often announces the next point instead of stating it. A casual phrase such as "one thing that bit me" can have the same problem. Remove the announcement, not just its formal tone. Before:
Let's dive into how caching works in Next.js. Here's what you need to know. After: Next.js caches data at multiple layers, including request memoization, the data cache, and the router cache. Before (casual register): One thing that bit me hard, so pay attention to this part: the webpack dev server doesn't send the CORS header by default. After: The webpack dev server doesn't send the CORS header by default.
Signs to watch: A heading followed by a one-line paragraph that simply restates the heading before the real content begins. Problem: AI writing often follows a heading with a sentence that only repeats the heading. Remove the repeated sentence. Before:
Performance
Speed matters.
When users hit a slow page, they leave. After:
Performance
When users hit a slow page, they leave.
Problem: Documentation and comments should describe the current behavior. Mention the previous version only in change logs, release notes, migration guides, and other documents about change. Before:
This function was added to replace the previous approach of iterating through all items, which caused O(n²) performance. After: This function uses a hash map for O(1) lookups, avoiding the O(n²) cost of naive iteration.
Problem: AI writing often turns each sentence into a dramatic closing line. One short sentence can add emphasis. A row of short fragments usually feels forced. Before:
Then AlphaEvolve arrived. It had no preference for symmetry. No aesthetic prior. No nostalgia for human taste. The old rules were gone. After: AlphaEvolve changed the search because it did not favor symmetry or human-looking designs. That made some of the older assumptions less useful.
Words to watch: X is the Y of Z, X becomes a trap, X is not a tool but a mirror, the language of, the currency of, the architecture of Problem: AI writing often turns an ordinary claim into a saying that sounds deep but adds no detail. Replace the saying with the specific claim. Before:
Symmetry is the language of trust. Efficiency becomes a trap when teams forget the human layer. After: Symmetric layouts often feel more predictable to users. Teams can over-optimize workflows and miss how people actually use them.
Phrases to watch: Honestly?, Look, Here's the thing, The thing is, Let's be honest, Real talk, when used as standalone hooks or fake-candid pauses before an ordinary point. Problem: AI writing often starts with a staged pause or claim of honesty before making a routine point. State the point directly. Before:
Is it worth the price? Honestly? It depends on how often you'll use it. After: Whether it's worth the price depends on how often you'll use it.
Phrases to watch: This isn't (mainly/really) about, I'm not saying/arguing/trying to, To be clear, Don't get me wrong, This is not to say, You could argue/frame this differently but, Some might say... but Problem: AI writing may answer an objection that does not appear in the text. Watch for an unattributed statement about what the writer does not mean, especially when the topic appears nowhere else. A direct claim such as "the API is not thread-safe" is not this pattern. Before:
This isn't mainly about prompt length, and I'm not arguing that documentation doesn't matter. You could categorize the problem another way, but the issue is whether the agent can use the instruction when it acts. After: The issue is whether the agent can use the instruction when it acts.
Remove only the unsupported defense. If it contains a real claim, state that claim directly. Keep an objection when the text names its source or answers it in full.
Phrases to watch: A tempting option/approach would be, One might be tempted to, An obvious approach would be, You might think... but, It would be easy to just, Some would suggest Problem: AI writing may introduce an option that no reader would consider, reject it in a clause, and never mention it again. This often leaves an old drafting idea in the final text. Remove the fake option and state the real constraint directly. Before:
Session tokens are rotated every 24 hours. A tempting approach would be to rotate them by restarting the auth service on a cron job, but that would drop every active session. Rotation happens in place, and clients refresh transparently. After: Session tokens are rotated every 24 hours, in place, and clients refresh transparently.
One rejected option may be valid. Several short, unrelated rejections are a stronger sign. Ask what new information each sentence adds. If it only records an earlier edit, rewrite the paragraph around its main point.
A person may use some of these patterns. Do not treat any item below as proof by itself:
When unsure, look for several patterns together. One em dash proves nothing. Several stock patterns in the same passage are stronger evidence.
These details often carry the writer's voice. Keep them unless they hurt the meaning:
Pasted text (default). Return the draft, a short list of remaining AI patterns, and the final rewrite.
File mode. When the user names a file, run the full rewrite process but write only the final text to the file. Change prose only. Keep code blocks, YAML metadata, data, and link targets unchanged. Then give the user a short summary.
Embedded mode. When another task uses this skill for a pull request, commit message, or document, return only the final text.
Return the result required by How to return the result.
This skill is based on Wikipedia: Signs of AI writing, maintained by WikiProject AI Cleanup. Its patterns come from reviews of AI-generated text on Wikipedia.
Wikipedia's main point: "LLMs use statistical algorithms to guess what should come next. The result tends toward the most statistically likely result that applies to the widest variety of cases."
Last scanned: 7/25/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-07-25T06:16:49.601Z",
"npmAuditRan": true,
"pipAuditRan": true,
"promptInjectionRan": true
}Humanizer rewrites AI-sounding text so it reads like a person wrote it, without changing what it says. Because it is just Markdown, it works with any agent that supports skills.
Humanizer uses 35 patterns from Wikipedia's "Signs of AI writing", maintained by WikiProject AI Cleanup. It makes a first pass without treating the original structure as fixed. Then it checks the draft against those patterns and the original claims before rewriting whatever still needs work.
"LLMs use statistical algorithms to guess what should come next. The result tends toward the most statistically likely result that applies to the widest variety of cases."
It does not make things up. A name, number, date, quote, citation, or other factual detail must come from the source or the writer. For personal writing, Humanizer keeps the writer's style. Technical and reference prose stays neutral and plain. If you provide a writing sample, Humanizer follows that sample instead of its default style rules.
When you paste text, Humanizer shows its work before giving you the final version. You see the first rewrite and a short critique of anything that still sounds artificial. Point it at a file and it changes only the prose, leaving code, data, frontmatter, and link targets alone.
Call the skill directly:
/humanizer
[paste your text here]
Or ask in plain language:
Please humanize this text: [your text]
To rewrite a file, give Humanizer its path:
Humanize the prose in docs/launch-post.md
If you want the rewrite to sound more like you, include a sample:
/humanizer
Here's a sample of my writing for voice matching:
[paste 2-3 paragraphs of your own writing]
Now humanize this text:
[paste AI text to humanize]
Humanizer follows the sample's rhythm, word choice, punctuation, and deliberate quirks.
| # | Pattern | Before | After |
|---|---|---|---|
| 1 | Inflated importance and legacy | "marking a pivotal moment in the evolution of..." | "was established in 1989 as part of a wider decentralization" |
| 2 | Name-dropping to prove importance | "cited in NYT, BBC, FT, and The Hindu" | Keep only useful, sourced context |
| 3 | Shallow -ing analysis | "symbolizing... reflecting... showcasing..." | Keep only what the source supports |
| 4 | Sales language | "nestled within the breathtaking region" | "is a town in the Gonder region" |
| 5 | Vague sources | "Experts believe it plays a crucial role" | Name a real source or remove the claim |
| 6 | Formulaic challenges and outlook | "Despite challenges... continues to thrive" | Keep the facts and remove the sales pitch |
| # | Pattern | Before | After |
|---|---|---|---|
| 7 | Overused AI words | "Actually... additionally... gated on... quietly... testament... landscape... showcasing" | "also... needs... remain common" |
| 8 | Avoiding is and are | "serves as... features... boasts" | "is... has" |
| 9 | Not X but Y and clipped endings | "It's not just X, it's Y", "..., no guessing" | State the point directly |
| 10 | Forced groups of three | "innovation, inspiration, and insights" | Use the number of items the meaning needs |
| 11 | Changing names and repeated openings | "protagonist... main character... hero" or "She noted... She noted... She filed..." | Use one name or merge the repeated sentences |
| 12 | False from X to Y ranges | "from the Big Bang to dark matter" | List the topics directly |
| 13 | Passive voice and missing subjects | "No configuration file needed" | Name the actor when that helps |
| # | Pattern | Before | After |
|---|---|---|---|
| 14 | Em/en dashes | "institutions—not the people—yet this continues—" | Cut them: periods, commas, colons, or parentheses |
| 15 | Too much bold text | "OKRs, KPIs, BMC" | "OKRs, KPIs, BMC" |
| 16 | Lists with bold mini-headings | "Performance: Performance improved" | Use prose when a list adds no value |
| 17 | Title case in headings | "Strategic Negotiations And Partnerships" | "Strategic negotiations and partnerships" |
| 18 | Emojis | "🚀 Launch Phase: 💡 Key Insight:" | Remove emojis |
| 19 | Curly quotes | said “the project” |
said "the project" |
| 26 | Too many hyphenated word pairs | “cross-functional, data-driven, client-facing” | Keep only the hyphens grammar needs |
| 27 | A fake deeper truth | "At its core, what matters is..." | State the point directly |
| 28 | Announcing the next point | "Let's dive in", or "one thing that bit me" | Start with the content |
| 29 | A heading repeated below itself | "## Performance" + "Speed matters." | Let the heading do the work |
| 30 | Writing about the old version | "This function was added to replace..." | Describe what it does now |
| 31 | Forced punchlines and fragments | "It had no preference. No prior. No nostalgia." | Use natural sentence lengths and specific claims |
| 32 | Formulaic sayings | "Symmetry is the language of trust" | State the specific claim |
| 33 | Fake-candid openings | "Honestly? It depends..." | State the answer directly |
| 34 | Answering objections no one raised | "This isn't mainly about prompt length..." | Remove the unsupported defense and keep any real claim |
| 35 | Rejecting fake alternatives | "A tempting option would be to..., but" | Remove the fake option and keep real choices |
| # | Pattern | Before | After |
|---|---|---|---|
| 20 | Chatbot text left in the answer | "I hope this helps! Let me know if..." | Remove it |
| 21 | Knowledge-limit disclaimers and guesses | "While details are limited in available sources..." | State what is known or remove the claim |
| 22 | Overly agreeable tone | "Great question! You're absolutely right!" | Answer directly |
| # | Pattern | Before | After |
|---|---|---|---|
| 23 | Filler phrases | "In order to", "Due to the fact that" | "To", "Because" |
| 24 | Too many qualifiers | "could potentially possibly" | "may" |
| 25 | Generic positive endings | "The future looks bright" | End with a fact or a sourced plan |
Details such as the month and neighborhood need to come from the writer. If they are missing, Humanizer should ask instead of making them up.
Before (AI-sounding):
I recently spent five unforgettable days in Lisbon, and let me tell you — this city completely stole my heart. From the moment I arrived, I knew I was somewhere truly special.
Nestled along the banks of the Tagus River, Lisbon stands as a vibrant testament to Portugal's enduring spirit, where rich history and modern energy intertwine at every turn. Yes, the famous hills are challenging — my legs certainly felt it! — but every climb rewards you with breathtaking, panoramic views that make it all worthwhile.
No trip would be complete without riding the iconic Tram 28, winding through the city's most historic neighborhoods. And the food? Simply divine. The original pastéis de nata at Pastéis de Belém are a beloved national treasure, and savoring one still warm was a moment I will never forget.
But what truly makes Lisbon special isn't just the sights — it's the feeling. Wander a few steps off the main squares and you'll discover a quieter, more authentic side: sun-drenched alleys, charming tiled facades, and friendly locals going about their daily lives, inviting you to slow down and savor every moment.
Of course, the must-see São Jorge Castle offers stunning views over the rooftops below. The queues can be long, but the experience is absolutely worth it for any history buff or curious traveler.
Would I go back? Absolutely. Lisbon isn't just a place to visit — it's a place to fall in love with, again and again. If you're dreaming of your next getaway, this is one destination that promises memories to last a lifetime. ✨
After:
I spent five days in Lisbon last October and still have mixed feelings about it. Beautiful, yes. Also harder on the knees than anyone warned me.
The hills are the whole story and somehow never make the brochures. My hotel was up in Alfama, which photographs beautifully and translates, in practice, to climbing what felt like a six-story staircase every time I wanted coffee. By the second day my calves had opinions. I started planning each walk around which way was downhill, which is a strange way to see a city but probably an honest one.
Everyone says to ride Tram 28, so I did, wedged against a stranger's backpack for forty minutes while three tour groups filmed the same corner. I would walk the route next time, or go before breakfast. The custard tarts, though, earn the fuss. I had one at a plain little place in Graça, still warm, and for about thirty seconds I understood why people build trips around pastry.
What I did not expect was how quiet the city gets away from the main squares. Two blocks uphill from any plaza it turns into laundry lines, chipped tile, open windows, and old men watching football with the sound turned up. That is the Lisbon I keep thinking about, not the castle.
The castle is fine. The view is great, the queue is long, and I spent more time shuffling toward the entrance than looking at anything once I got inside. If I had only two days, I would trade it for an afternoon of getting lost.
I would go back, but in spring and with better shoes. Lisbon does not bend over backward to make things easy for you. I think I liked that, even when my legs disagreed.
humanizer is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by blader. Agent skill that removes signs of AI-generated writing from text. It has 43,681 GitHub stars.
Yes. humanizer passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/blader/humanizer" and add it to your Claude Code skills directory (see the Installation section above). humanizer ships a SKILL.md manifest, so compatible agents can discover and load it automatically.
humanizer is primarily written in Python. It is open-source under blader on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh humanizer against similar tools.
No comments yet. Be the first to share your thoughts!
Based on votes and bookmarks from developers who liked this skill