About enterprise-tomcat-web
enterprise-tomcat-web is a domain skill for querying Tomcat web.xml deployment descriptors with dasel v3. It provides selectors for inspecting servlet, filter, listener, context-parameter, and init-parameter data.
Key features
- 01Servlet enumeration and counting
- 02Filter class-pattern searches
- 03Listener counting
- 04Context-parameter name extraction
- 05Servlet lookup by init-param
Use cases
- 01Listing servlet names in a deployment descriptor
- 02Finding filters by class-name fragment
- 03Identifying servlets with a specified init parameter
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ jamie-bitflight/ claude_skills --skill enterprise-tomcat-webAfter installing, type/enterprise-tomcat-webin Claude Code to confirm it loaded.
Details
From the project READMETomcat web.xml Dasel Query Patterns
<when_to_use>
Load this skill when querying a web.xml deployment descriptor — enumerating servlets, inspecting filter chains, listing listeners, extracting context parameters, or finding servlets by init-param value.
</when_to_use>
Domain skill for querying Tomcat web.xml files using dasel v3. Always use -i xml explicitly. XML attributes use - prefix in dasel friendly mode.
Servlet Discovery
# All servlet names
cat web.xml | dasel -i xml 'web-app.servlet.map(servlet-name)'
# Count servlet definitions
cat web.xml | dasel -i xml 'len(web-app.servlet)'
Filter Chain Analysis
# Find filters by class pattern (e.g., Security filters)
cat web.xml | dasel -i xml 'web-app.filter.filter(filter-class ~ ".*Security.*")'
Replace Security with any class name fragment.
Listener Enumeration
# Count listener definitions
cat web.xml | dasel -i xml 'len(web-app.listener)'
Context Parameters
# All context-param names
cat web.xml | dasel -i xml 'web-app.context-param.map(param-name)'
Init Parameter Inspection
# Find servlets with a specific init-param name — filters parent collection by testing child length > 0
cat web.xml | dasel -i xml 'web-app.servlet.filter(init-param.filter(param-name == "debug").len($this) > 0).map(servlet-name)'
Replace "debug" with the target param-name value.
All selectors require the full command prefix: cat web.xml | dasel -i xml '<selector>'