Ah, I'm stupid. Seam registers the components in the application context, so I just need to iterate through the names and pick *.component.
Now I need to intercept component startup. So I could use @Startup but I really depend on _all_ other components being installed first. The depends= attribute doesn't really work for me. I guess I could use something like @Startup(dependsPackages=).
I've been thinking we need more hooks into startup. For example, we want to be able to scan for *.jpdl.xml and load them as pageflows.
I had been thinking we should have the ability to register a listener on the scanner; this could work here?
That wouldn't work for me, I need the components to be initialized before my startup listener runs.
I'm using @Autocreate now and call it first thing on the first page of the application. Not a permanent solution.