You are more than welcome to become involved and contribute to the project. Some of the things that should be done:
- Write javadoc documentation for the source code. This is nasty, but right now you need to be brave and read the source. The examples of jacomma.examples should offer enough hints on how the jacomma platform works though.
- Update the internal interface for the changes in icm-0.4.0pre3 and later. These releases have changed the internal low level format for protocol messages in an undocumented and rather inconsistent way, and as a side effect broke the Jacomma engine. However, since this should not be undertaken before icm-0.4.0 is out (and the low level message encoding for protocol messages stabilized). For the moment, you have to use an icm version earlier than 0.4.0pre3.
- Provide Encoders/Decoders for Floats, References, and Circular structures (not implemented currently).
- Provide a better hint-scheme for the I/O stack (encoders and decoders). Currently, the scheme is rather ad hoc, and not externally visible.
- Enhance the pattern matching algorithm. The current pattern matching algorithm is rather inefficient, and does not allow for fine-grained message pattern specification.
- Implement a security policy. Right now, no security manager is present in the jacomma engine, and mobile agents that could be spawned by resident agents have unlimited priviledges. Obviously, this is an ugly security hole, and should be fixed at some point.
- Provide a standard set of agents that can define a complete agent platform.The FIPA spec may be relevant at this point.